调用Axis WebService服务端错误的解决

在尝试调用Axis WebService时遇到错误:java.lang.reflect.InvocationTargetException。问题源于服务端找不到指定的Class。解决方法是将特定的jar文件(如resolver.jar, serializer.jar等)放入WebContentWEB-INFlib目录下。尽管这可能是Axis的一个bug,但成功调用后即使删除这些jar文件也能继续正常工作。如果有人对此有深入理解,欢迎分享。" 122970027,12305517,Java版本与环境详解-从JRE到J2EE,"['Java开发', 'JRE', 'JDK', '操作系统兼容性', '版本管理']

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

错误信息:

AxisFault

faultCode:{http://schemas.xmlsoap.org/soap/envelope/}Server.userException

faultSubcode:

faultString:java.lang.reflect.InvocationTargetException

faultActor:

faultNode:

faultDetail:

{http://xml.apache.org/axis/}hostname:myServer

 

关键点:

faultString:java.lang.reflect.InvocationTargetException

 

原因:

服务端找不到指定的Class

 

解决办法:

复制下面几个jar文件到WebContent\WEB-INF\lib\

 

resolver.jar

serializer.jar

xercesImpl.jar

xercesSamples.jar

xml-apis.jar

 

jar文件下载地址:

http://mirror.bit.edu.cn/apache//xerces/j/binaries/Xerces-J-bin.2.11.0.zip

或者到这个网站里面找

http://xerces.apache.org/index.html

 

其它:

这个问题应该是Axis的一个bug。但是比较诡异:一旦成功调用以后,即使再把上面这些jar文件删除掉,还是可以成功调用。

没有时间再研究了。有知道可以告知。谢谢!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值