0

我在 JBoss (5.1.0.GA) 中部署了一个包含 Web 服务客户端的应用程序。进行 Web 服务调用的库是作为已编译的 JAR 提供的,因此我无法对其实现进行任何更改。我正在使用 AXIS 1.4,并且在 JBoss 之外一切正常。在我部署并尝试执行触发 Web 服务调用的操作后,我收到此异常:

javax.xml.soap.SOAPException:无法为 SOAP 创建消息工厂:org.jboss.ws.core.soap.MessageFactoryImpl 无法转换为 javax.xml.soap.MessageFactory

我可以更改我的应用程序的配置,告诉它不要使用 JBoss 提供的 saaj 实现吗?我想尽量避免进行服务器范围的更改,因为那里部署了几个我不想弄乱的其他应用程序。

4

1 回答 1

0

jboss-classloading.xml在 Jboss 5 中,您可以选择为您的可部署资源创建自定义类加载文件。因此,如果您编译的 jar 打包在 WAR/EAR 中,您可以指示 JBoss 在此 jar 中使用 saaj 实现,而不是使用服务器库。这篇文章很好地描述了它的工作原理:

http://phytodata.wordpress.com/2010/10/21/demystifying-the-jboss5-jboss-classloading-xml-file/

于 2011-07-07T02:17:44.447 回答