解决weblogic与axis的冲突(转)

我们的程序要调用另一个公司的一个接口,之间传递数据是采用xml的方法,我们这边取

数据是用这个代码
String wsURL = AppConst.KKSUrl;
Service service = new Service();
Call call = (Call) service.createCall();
call.setOperationName(new QName(wsURL, "getCodePowerNet"));
call.setTargetEndpointAddress(new URL(wsURL));
String requestContent = getSimulatedXMLData();
xmlReturn = (String) call.invoke(new Object[] { requestContent });

其中的call是org.apache.axis.client下的,以前我们的中间件是webshere,tomcat倒没

发现什么异常,后来换成weblogic后,我们就怎么也取不到数据,但是再开发模式下就好

用。
一步一步的跟踪发现是在这
xmlReturn = (String) call.invoke(new Object[] { requestContent });
出现问题。
查看错误日值发现是和weblogic的webserver相冲突了。
解决的方法有2种:
1. 配置weblogic.xml,强制weblogic首先加载应用WEB-INF中的class
2. 修改startweblogic.cmd,将axis下的saaj.jar的路径放在weblogic的

webservices.jar之前。

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


不过这段代码加进去要注意先后顺序

<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application

8.1//EN" "http://www.bea.com/servers/wls610/dtd/weblogic-web-jar.dtd">
<weblogic-web-app>
<jsp-descriptor>
<jsp-param>
<param-name>compileFlags</param-name>
<param-value>-g</param-value>
</jsp-param>
<jsp-param>
<param-name>keepgenerated</param-name>
<param-value>true</param-value>
</jsp-param>
</jsp-descriptor>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
<charset-params>
<input-charset>
<resource-path>/*</resource-path>
<java-charset-name>GBK</java-charset-name>
</input-charset>
</charset-params>
<context-root>/bdsc</context-root>
</weblogic-web-app>
但是我们和bea的人交流过,他们说不建议修改weblogic.xml,不过我觉得你在path前指

定jar感觉不方便,因为weblogic中出现这种问题的时候比较多,比如连接oracle数据库

的驱动就会出现冲突。还是修改weblogic.xml一劳永逸!
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值