weblogic下 java.lang.NoSuchMethodError异常

在做FTP文件操作时,遇到下面的问题:

javax.ejb.EJBTransactionRolledbackException: EJB Exception: : java.lang.NoSuchMethodError: org.apache.commons.net.ftp.FTPClient.setConnectTimeout(I)V

引用的包没有问题,代码也没有问题。但是一启动weblogic,运行程序,就出现这个异常,查阅了网络很多资料,找到了可能引起的原因:

weblogic在启动时,会加载一些自己的jar包,需要做一些配置,才能优先加载自己项目中的jar包,我的应用是一个服务,不是web项目,使用的配置是:

META-INF/weblogic-application.xml文件中加入以下配置:

<wls:prefer-application-packages>
        <wls:package-name>org.apache.commons.net.*</wls:package-name>
</wls:prefer-application-packages>


如果是web项目可以在META-INF/weblogic.xml文件加入以下配置:

<wls:container-descriptor>
        <wls:prefer-application-packages>
            <wls:package-name>org.apache.commons.net.*</wls:package-name>
        </wls:prefer-application-packages>
    </wls:container-descriptor>


或:

 <wls:container-descriptor>
    <wls:prefer-web-inf-classes>true</wls:prefer-web-inf-classes>
    </wls:container-descriptor>

META-INF/weblogic-application.xml的配置已经测试通过

我的weblogic是10.3.6

参考文章:

weblogic中使用commons-lang包报java.lang.NoSuchMethodError解决办法


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值