您的位置:首页 > 其它

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

2015-03-11 20:30 501 查看
基本环境:

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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐