关闭 JBoss 5.1 中的 JBoss WS 模块



我正在尝试将我的CXF Web应用程序部署到JBoss 5.1 GA。所有功能在Tomcat中都可以正常工作,但是内部JBoss-WS jar导致了一些意外的行为(与此处编写的相同),因此我想关闭Jboss Web服务子系统,因为它写在这里。

问题是在 WEB-INF 中放置 jboss-deployment-structure.xml 即使在重新启动服务器后也没有任何效果,因此我假设它在 5.1 版中不受支持。从/deployers 中删除 jbossws.deployer,从/deploy 中删除 jbossws.sar(如此处所述)不是一个有效的选项,因为有许多应用程序可能会受到它的影响。

所以我的问题是如何禁用内部 JBoss WS 模块?

非常感谢,

彼得

参见 JAX-WS 规范的 "6.2.1 配置" 一节。第 1 点 说:

  1. 如果存在名为 META-INF/services/javax.xml.ws.spi.Provider 的资源,则其第一行(如果存在)将用作实现类的 UTF-8 编码名称。

JBOSS_HOME/common/lib/jbossws-native-jaxws.jar JAR,其中包含META-INF/services/javax.xml.ws.spi.Provider文件,其中包含:

org.jboss.ws.core.jaxws.spi.ProviderImpl

因此,根据上述规范的第 2 点或第 3 点,您可以:

  • 使用${java.home}/lib/jaxws.properties
  • 使用名称为 javax.xml.ws.spi.Provider 的系统属性

当尝试使用最新的 CXF 提供程序时,我已经使用 JBoss 6 完成了此操作。

最新更新