webservice项目部署部署到weblogic报错之解决方案

本文介绍了解决在WebLogic服务器上部署WebService项目时遇到的jar包冲突问题。通过调整加载顺序,确保geronimo-ws-metadata_2.0_spec-1.1.3.jar中的方法能够被正确加载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本地tomcat部署webserivce项目正常,但是放到weblogic下却又异常:

 <User defined listener org.springframework.web.context.ContextLoaderListener failed: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authWebService': Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: portName.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authWebService': Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: portName
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
...

java.lang.NoSuchMethodError: portName
 at org.apache.cxf.jaxws.support.JaxWsImplementorInfo.initialize(JaxWsImplementorInfo.java:307)
 at org.apache.cxf.jaxws.support.JaxWsImplementorInfo.<init>(JaxWsImplementorInfo.java:60)
 at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:385)
....

经查,原因为weblogic自带的weblogic.jar与CXF框架的geronimo-ws-metadata_2.0_spec-1.1.3.jar冲突所致,weblogic启动时默认优先加载了weblogic.jar,因而无法加载geronimo-ws-metadata_2.0_spec-1.1.3.jar中的方法

解决办法:把geronimo-ws-metadata_2.0_spec-1.1.3.jar复制到%WL_HOME%\server\lib\目录下(%WL_HOME%一般为:wls9\bea\weblogic92\),然后修改startWebLogic.cmd文件(windows系统修改startWebLogic.cmd文件,linux系统则要修改startWebLogic.sh文件),将set SAVE_CLASSPATH=%CLASSPATH%行内容修改为:

set SAVE_CLASSPATH=%WL_HOME%\server\lib\geronimo-ws-metadata_2.0_spec-1.1.3.jar%CLASSPATH%

即使geronimo-ws-metadata_2.0_spec-1.1.3.jar优先加载即解决了冲突所致报错的问题。

 

转载于:https://www.cnblogs.com/mubin/p/4649044.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值