Параметры SOAP Вызов не передан методу (Glassfi sh) - PullRequest
0 голосов
/ 19 марта 2020

У меня есть SOAP WebService, который вызывается внешним клиентом вне моей досягаемости. Когда этот клиент вызывает мой веб-сервис, никакие параметры не передаются моему вызову метода, даже если метод вызывается.

Я сузил это до того, как форматируется запрос.

Это мой веб-сервис (сокращенно):

@WebService(targetNamespace = "urn:customer:their.API")
public class WebService{

    @WebMethod(operationName = "Request")
    @WebResult(name = "Result", targetNamespace = "urn:customer:their.API")
    public Result Request(@WebParam(name = "Action") String action) {

    }
}

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:customer:their.API">
   <soapenv:Header/>
   <soapenv:Body>
      <urn:Request>
         <Action>DoSomething</Action>
      </urn:Request>
   </soapenv:Body>
</soapenv:Envelope>

Это не работает, «Действие» не передано:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header/>
   <soapenv:Body>
      <Request xmlns="urn:customer:their.API">
         <Action>?</Action>
      </Request>
   </soapenv:Body>
</soapenv:Envelope>

Проблема в том, что я не могу изменить запрос, потому что он поступает от какого-то другого программное обеспечение, к которому у меня нет доступа.

Это выполняется на Glassfish5 в виде простого файла WAR

Любые идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...