解决:AMQ应用部署到weblogic服务器上出现“找不到匹配的方法setLifo"

来源:互联网 发布:淘宝偷图技巧 编辑:程序博客网 时间:2024/06/05 00:21

基本环境:

spring 3.1.0

amp 5.9.x

weblogic 10.3.5

jdk 1.6.x

linux 2.6


在将APP部署到weblogic上时,无法启动,提示”找不到匹配的方法setLifo“。

原因是weblogic与amp都用到了apache commons lang包,且依赖的版本号不同,存在兼容问题。

其中,amq依赖commons-lang包只是在组件console中输出日志,其他组件输出的日志我们还是可以依赖log4j或logback来输出到我们制定的目录和文件上。

因此,我们可以做如下调整,让APP跑起来:

1、修改weblogic.xml优先加载jar包位置:

<?xml version="1.0"?><weblogic-web-app><container-descriptor>          <prefer-application-packages>        <package-name>org.apache.*</package-name>        </prefer-application-packages>      </container-descriptor>  <session-descriptor><!-- 避免多个应用部署到同一台weblogic时, session cookie相互覆盖 --><cookie-name>JSESSIONID_XXX_WEB</cookie-name></session-descriptor></weblogic-web-app>

2、从maven amq-console的依赖中将commons-lang包排除:

<dependency>           <groupId>org.apache.activemq</groupId><artifactId>activemq-console</artifactId><exclusions><exclusion><artifactId>commons-lang</artifactId><groupId>commons-lang</groupId></exclusion></exclusions>       </dependency>




0 0
原创粉丝点击