上一篇文章记录了tomcat6+jdk1.6部署cxf,本来高兴的不行,没想到用户是jdk1.5+weblogic9.2,额,问题一堆堆,无数次百度......
jar包冲突让我试了好几天
从开始说吧,jdk1.6到1.5记得@WebService都报红线错误,最后找了个rt.jar扔到lib下好使了(但最后部署到weblogic后就删掉了冲突)。
然后就是部署到Weblogic上,报各种各样的错误,总结起来都是jar包问题,各种冲突,删了很多,加了很多jar包,最后报了一个错是说
问题一:java.lang.NoSuchMethodError:javax.jws.WebService.portName()Ljava/lang/String;
百度了很多,说是自身的包与weblogic包冲突,优先加载lib下的,但很可惜的是按照解决方案的比如在WEB-INF下加入weblog.xml,设置
<prefer-web-inf-classes>true</prefer-web-inf-classes>
类似这种很多,但是我一加入这个weblogic.xml就报错,怎么都不好使,最后选择了另一种方式,在weblogic的启动文件上优先加载geronimo-ws-metadata_2.0_spec-1.1.3.jar包(windows系统默认是修改startweblogic.cmd,linux修改startWeblogic.sh),
1.geronimo-ws-metadata_2.0_spec-1.1.3.jar放到相应的lib下(我放的是../bea/weblogic92/server/lib):
2.修改启动文件如下图红线部分,