Создание одинаковых тегов запроса XML для методов с другим именем для soapUI на Java

Мне нужны одинаковые теги XML-запроса для разных методов

Мой интерфейс выглядит следующим образом

@WebService
@SOAPBinding(style = Style.RPC) 
public interface Services {


@WebMethod public String login(String networkId,String password);


@WebMethod public String loginAS(String networkId,String password);

}

soapUI генерирует следующие запросы

Запрос 1:

<soapenv:Envelope xmlns:soapenv = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser = "http://service.project.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:login>
         <arg0>?</arg0>
         <arg1>?</arg1>
       </ser:login>
   </soapenv:Body>
</soapenv:Envelope>

Запрос 2:

<soapenv:Envelope xmlns:soapenv = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser = "http://service.project.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:loginAS>
         <arg0>?</arg0>
         <arg1>?</arg1>
      </ser:loginAS>
   </soapenv:Body>
</soapenv:Envelope>

Я хочу, чтобы оба моих запроса имели одинаковый тег (выделен)

Желаемый запрос:

<soapenv:Envelope xmlns:soapenv = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser = "http://service.project.com/">
   <soapenv:Header/>
   <soapenv:Body>
      ***<ser:login>***
         <arg0>?</arg0>
         <arg1>?</arg1>
        ***</ser:login>***
   </soapenv:Body>
</soapenv:Envelope>

Я хочу, чтобы оба запроса имели один и тот же тег **<ser:login>** вместо двух разных тегов **<ser:login>** и **<Ser:loginAS>**.

@WebMethod(operationName = "login") не работает?
daniu 24.09.2018 15:44

получение ошибки "название операции должно быть уникальным"

Ayush 24.09.2018 15:46

Вам нужно различать два метода по разным параметрам или именам.

karen 24.09.2018 15:49

на самом деле я являюсь продюсером запроса. этот запрос должен обрабатываться разными пользователями. Мне нужно перенести это из точечной сети на java. в точечной сети он работал нормально (оба запроса имели одинаковый тег). не могу изменить имя метода или параметр сейчас. любая альтернатива?

Ayush 24.09.2018 15:52

@daniu, есть обновления?

Ayush 24.09.2018 16:29

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

Ivan Fontalvo 24.09.2018 17:06

@IvanFontalvo, этот проект довольно старый. Я получил проект по переносу этого на Java. Если я каким-либо образом изменю метод, потребителям этой службы придется вносить изменения в свою очередь, а это то, чего не хочет владелец проекта. Мне нужно оставить имя метода как есть.

Ayush 25.09.2018 08:28
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
7
226
1

Ответы 1

Мой совет: используйте простой метод и добавьте новый параметр для идентификации

@WebService
@SOAPBinding(style = Style.RPC) 
public interface Services {


@WebMethod public String login(String networkId,String password, String newParam);

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

Ayush 25.09.2018 08:33

Вы пытались использовать фильтр и обрабатывать запрос, как хотите

Ivan Fontalvo 25.09.2018 17:29

Другие вопросы по теме