Я пытаюсь HTTP Опубликовать строку XML на сервере WebMethods с использованием базовой аутентификации. Я пытался использовать плагин REST, который находится поверх HTTP Builder. Я перепробовал несколько вещей, которые привели к получению ответа 0 длины. Используя постер Firefox, я использовал точно такой же XML-код и аутентификацию пользователя, и ответ WebMethods заключается в том, чтобы повторить запрос с некоторой дополнительной информацией, поэтому я ошибаюсь в приведенном ниже коде. Надеюсь, у кого-то есть указатель для выполнения HTTP-публикации XML.
string orderText = "<item>
<item>1</item>
<price>136.000000</price>
</item>"
def response = withHttp(uri: "https://someserver.net:4433") {
auth.basic 'user', 'pass'
// have tried body: XmlUtil.serialize(orderText)
def r = post(path: '/invoke/document', body: orderText, contentType: XML, requestContentType: XML)
{ resp, xml ->
log.info resp.status
log.info resp.data
resp.headers.each {
log.info "${it.name} : ${it.value}"
}
}
log.info r
return r
}
В журналах написано:
04-02-2011 14:19:39,894 DEBUG HTTPBuilder - Response code: 200; found handler: OrdersService$_closure1_closure2_closure3_closure4@36293b29
04-02-2011 14:19:39,895 INFO HTTPBuilder - Status: 200
04-02-2011 14:19:39,896 INFO HTTPBuilder - Data: null
04-02-2011 14:19:39,896 INFO HTTPBuilder - XML: null
04-02-2011 14:19:39,913 INFO HTTPBuilder - Content-Type : application/EDIINT; charset=UTF-8
04-02-2011 14:19:39,913 INFO HTTPBuilder - Content-Length : 0
Приветствия
Steve