2012-07-04 3 views
0

Я использую Spring WebServiceTemplate.marshallSendAndReceive() для связи с веб-службой.Советы по отладке поведения JAXB/JBOSS

Если я запускаю свой код за пределами сервера приложений, он работает правильно. Если я запустил его внутри моего сервера приложений (JBOSS EPP), маршаллинг производит значительно разные результаты.

Ожидаемый XML выглядит как

<root> 
    <element1/> 
</root> 

Когда я бег в AppServer я получаю что-то вроде

<root/> 

То есть, мой дочерний элемент не будет создан и привязан к своему корневому элементу.

Я предполагаю, что это связано с JAXB, но когда я отлаживаю код, мой JAXBContext появляется из одного и того же файла jar как на сервере приложений, так и вне его.

Есть ли какие-либо другие зависимости, о которых я должен знать и могу влиять?

Благодаря

Dave

ответ

1

Мои сотрудники были некоторые проблемы с JAXB в прошлом. Эти проблемы были основаны на различной реализации парсера XML в разных средах исполнения. В нашем случае в некоторой среде был синтаксический анализатор xerxes, что приводило к некоторой ошибке в случае одновременного выполнения. Вы можете попытаться выяснить, какой XML-парсер используется вашим приложением и изменить его, если он отличается. Надеюсь, эта информация будет полезна для вас.

Смежные вопросы