首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在我的ear项目中,如何使用ApacheCXF3.x和WSS4J 2.X,而不是安装在JBoss 6.3.0EAP模块中的CXF和WSS4J (更早的版本)?

在我的ear项目中,如何使用ApacheCXF3.x和WSS4J 2.X,而不是安装在JBoss 6.3.0EAP模块中的CXF和WSS4J (更早的版本)?
EN

Stack Overflow用户
提问于 2015-07-08 19:23:16
回答 1查看 330关注 0票数 0

在我们的java应用程序中,我们必须使用apache CXF 3.0.0和WSS4j 2.1.1库。为了避免类加载器问题:在我的ear项目中,如何使用ApacheCXF3.x和WSS4J 2.X,而不是安装在JBoss 6.3.0EAP6.3.0EAP模块中的CXF和WSS4J (旧版)?

EN

回答 1

Stack Overflow用户

发布于 2015-07-10 00:17:03

由于JBoss类加载是模块化的,因此您可以创建一个jboss-deployment-structure.xml并在ear文件中排除与CXF和WSS4J相关的模块。请参考此wiki page以供参考。您可以在模块文件夹module.xml文件下找到各个模块的名称。

例如,要排除CXF-server模块:

代码语言:javascript
复制
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
      <deployment>
        <exclusions>
          <module name="org.jboss.ws.cxf.jbossws-cxf-server"/>
        </exclusions>
      </deployment>
</jboss-deployment-structure>

您显然需要确保您的pom.xml为您的CXF和WSS4J版本引入了所需的工件,而不是设置为提供的作用域。或者,您可以创建自己的自定义JBoss模块文件夹,并在其中添加库(如果这些库将由多个应用程序共享)(有助于使EAR和WAR文件更小,并在容器中集中管理整个组织中的依赖项)。在这种情况下,您可以将其设置为提供的作用域。

请记住,打包自己的库可能会破坏支持,因为它们不是容器提供的实现位的一部分。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31291208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档