0

我正在使用 Spring WebServiceTemplate.marshallSendAndReceive() 与 Web 服务进行通信。

如果我在应用程序服务器之外运行我的代码,它就可以正常工作。如果我我的应用程序服务器 (JBOSS EPP) 中运行它,编组会产生明显不同的结果。

预期的 XML 看起来像

<root>
   <element1/>
</root>

当我在 AppServer 中运行时,我得到类似

<root/>

也就是说,我的子元素没有创建并附加到我的根元素。

我假设这与 JAXB 有关,但是当我调试代码时,我的 JAXBContext 似乎来自应用服务器内外的同一个 jar 文件。

是否有任何其他依赖项我需要注意并可以影响?

谢谢

戴夫

4

1 回答 1

1

我的同事过去在使用 JAXB 时遇到了一些麻烦。这种麻烦是基于不同运行时环境中不同的 XML 解析器实现。在我们的例子中,某些环境有 xerxes 解析器,这会在并发执行的情况下导致一些错误。您可以尝试找出您的应用程序使用了哪个 xml 解析器,如果不同则更改它。我希望这些信息对你有用。

于 2012-07-04T12:22:03.880 回答