org.apache.axis2.AxisFault: Транспортная ошибка: 501 Ошибка: не реализовано - PullRequest
1 голос
/ 22 сентября 2010

Я пытаюсь вызвать веб-сервис Axis2, используя код, подобный:

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

Заглушки / скелеты генерируются с помощью codegen. Я могу корректно взаимодействовать с веб-службой от других клиентов (даже что-то низкоуровневое, написанное с помощью 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)

Кто-нибудь сталкивался с этим и знает решение?

Мне нужно как-то настроить заглушку для вызова веб-службы (я уверен, что это проблема конфигурации). Веб-сервис уже развернут и работает некоторое время.

Спасибо!

Ответы [ 2 ]

2 голосов
/ 31 октября 2012

Да, я пробовал без Axis 2 и только с javax.xml.soap.SOAPConnection и был успешным:

connection.setRequestProperty(HTTPConstants.HTTP_PROTOCOL_VERSION, HTTPConstants.HEADER_PROTOCOL_10);
2 голосов
/ 22 сентября 2010

Мне только что удалось решить эту проблему, используя сведения из следующей статьи .

Все, что я сделал, это добавил следующий код перед вызовом:

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

Спасибо за ваше время!

...