调用webservice时遇到的几个问题
2014-05-20 10:53
309 查看
命名空间配置不正确的错误。一般应该是服务端的程序包名改变后造成的。
下面的这个例子取自webservice大讲堂的,这个教程很好很详细。
Exception in thread "main" org.apache.axis2.AxisFault: namespace mismatch require http://complexTypeService found http://ws.apache.org/axis2
at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:517)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:371)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:417)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:539)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:520)
at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking(RPCServiceClient.java:102)
at complexTypeService.ComplexTypeRPCClient.main(ComplexTypeRPCClient.java:32)
解决办法:
1、查看该service的命名空间,访问网址http://localhost:8080/axis2/services/ComplexTypeService?wsdl
查看"targetNamespace=http://complexTypeService" ,说明命名空间为http://complexTypeService,其实就是包的名字。
2、修改客户端程序中使用命名空间的代码,比如:opAddEntry = new QName("http://complexTypeService", "getArray");
再运行的话就没有问题了。
下面的这个例子取自webservice大讲堂的,这个教程很好很详细。
Exception in thread "main" org.apache.axis2.AxisFault: namespace mismatch require http://complexTypeService found http://ws.apache.org/axis2
at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:517)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:371)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:417)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:539)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:520)
at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking(RPCServiceClient.java:102)
at complexTypeService.ComplexTypeRPCClient.main(ComplexTypeRPCClient.java:32)
解决办法:
1、查看该service的命名空间,访问网址http://localhost:8080/axis2/services/ComplexTypeService?wsdl
查看"targetNamespace=http://complexTypeService" ,说明命名空间为http://complexTypeService,其实就是包的名字。
2、修改客户端程序中使用命名空间的代码,比如:opAddEntry = new QName("http://complexTypeService", "getArray");
再运行的话就没有问题了。
相关文章推荐
- 调用webservice时遇到的几个问题
- cxf调用.net webservice 接口遇到的问题(尚未解决)
- .NET调用SAP的WebService遇到的问题
- JNA调用DLL函数遇到的几个问题
- 调用WebService接口遇到的问题。
- jquery调用WebService遇到的问题
- JNA调用DLL函数遇到的几个问题
- 关于asp调用webservice遇到的问题
- CXF动态客户端调用webservice实例 遇到的问题
- args.get_error的详细解释和在asp.net ajax中调用webservice遇到的问题
- 在directshow的filter里调用ffmpeg库遇到的几个头疼的问题
- 在使用KSoap2调用webservice遇到的问题
- 关于webService调用遇到的问题
- Android通过ksoap调用webservice遇到的问题及解决之道全纪录
- WP8调用WebService或WCF时遇到的问题及解决方案
- 调用webservice遇到基础连接已关闭的问题
- Axis2发布webservice过程 和Axi af16 s2调用wsdl 及遇到的问题
- VS2017调用Matlab引擎及Python环境遇到的几个问题
- hive SQL调用python脚本遇到的几个问题
- 调用.NET WebService写入文件时遇到文件夹被拒绝访问的问题