2010-09-22 89 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); 
相關問題