2013-07-19 5 views
0

У меня проблема с нашим клиентом webservice. Я обычно отправлял данные в webservice без проблем, но мы перешли из Geronimo в Weblogic, и ws клиент остановился для работы. Я исследовал данные, которые, посылаемые:Ошибка конвертера SOA WebService клиента

<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><ns1:loginData xmlns:ns1="http://xxxxxx.xx/xxx/xx/xxxx/webservice/xxxxxx/auction/types" soapenv:mustUnderstand="0"><ns1:anonymous>false</ns1:anonymous></ns1:loginData></soapenv:Header><soapenv:Body><ns1:offersSend xmlns:ns1="http://xxxxxx.xx/xxx/xx/xxxx/webservice/xxxxxx/auction/types"><ns1:http://xxxxxx.xx/xxx/xx/xxxx/webservice/etrace/auction/types>...... 

Http: //xxxxxx.xx/xxx/xx/xxxx/webservice/xxxxxx/auction/types>

Возвращается сообщение об ошибке:

soapenv:Server.userException</faultcode><faultstring>org.xml.sax.SAXParseException: &lt;Line 1, Column 426&gt;: XML-20201: (Fatal Error) Expected name instead of :.</faultstring><detail><ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">xxxx.xxxxxx.xxx</ns1:hostname></detail> 

Мне любопытно, что не так, это какая-то конфигурация AXIS? Каковы возможности заставить его работать?

EDIT: Я обнаружил, что проблема заключается в этой части:

<ns1:http://xxxxxx.xx/xxx/xx/xxxx/webservice/etrace/auction/types> 

Старый рабочий XML выглядит следующим образом:

<ns1:entityData> 

Но как это возможно, что AXIS является делать вызов совершенно другим?

ответ

0

Это, скорее всего, вызвано AXIOM-421. Проблема возникает с некоторыми версиями Axiom в сочетании с некоторыми реализациями StAX. Вероятно, после перехода с Geronimo на Weblogic реализация StAX, используемая приложением, отличается.

Решение состоит в том, чтобы перейти на новую версию Axiom или добавить Woodstox в приложение, чтобы оно использовалось вместо реализации StAX Weblogic.