2010-09-22 92 views
1

我想打电话给使用类似代码的Axis2 Web服务:org.apache.axis2.AxisFault:传输错误:501错误:未实现

stub = new MyServiceStub("http://server/app/services/MyService"); 
stub.ping(); 

存根/骨架与代码生成生成。我可以与来自其他客户端的Web服务正确交互(即使是用SAAJ编写的低级别),但不能从愚蠢的存根调用中进行交互。

我收到以下错误:

org.apache.axis2.AxisFault: Transport error: 501 Error: Not Implemented 
at org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.java:298) 
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:192) 
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:77) 
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:327) 
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:206) 
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396) 
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374) 
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211) 
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163) 
at my.package.stub.MyServiceStub.ping(MyServiceStub.java:266) 

已经有人遇到了这个和知道解决的办法?

我需要配置存根以某种方式调用Web服务(我相信这是一个配置问题)。 Web服务已经部署并运行了一段时间。

谢谢!

回答

2

我刚刚设法使用来自following article的详细信息解决了此问题。

我所做的只是在呼叫前添加如下代码:

stub._getServiceClient().getOptions() 
     .setProperty(HTTPConstants.HTTP_PROTOCOL_VERSION, HTTPConstants.HEADER_PROTOCOL_10); 

谢谢您的时间!

2

是的,我已经尝试无轴2只与javax.xml.soap.SOAPConnection,是sucessfull:

connection.setRequestProperty(HTTPConstants.HTTP_PROTOCOL_VERSION, HTTPConstants.HEADER_PROTOCOL_10); 
相关问题