Всем привет. Уже не знаю что можно придумать. Может кто-то чем-то поможет.
Есть soap webservice с методом String test1(in param); (Внимание на возвращаемый ответ).
в wsdl описано так и тут проблема наверное и по факту исправить никак.
wsimport (Spring Boot application) генерирует :
@WebMethod(action = "urn:getTest1")
@WebResult(name = "getTest1Response", targetNamespace = "http://test/", partName = "body")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
public String getTest1(
@WebParam(name = "getTest1", targetNamespace = "http://test/", partName = "body")
GetTest1InParams inParams);
Но по факту getTest1(...) возвращает XML (пример):
<getTest1Response>
<tag1></tag1>
//......
<tagN></tagN>
</getTest1Response>
Хочу все содержимое в строку загнать(SOAPBody) чтобы метод вернул строку и потом уже unmarshall сделать.
Поигрался с SOAPHandler - ничего не выходит.
Сделал замену ответа (чтобы попробовать если содержимое как обычный текст) на:
<getTest1Response>
простой текст
</getTest1Response>
но даже так не парсится ответ в String.
Можно ли как-то такое провернуть.
Вариант с допиленой wsdl проверил - все ок (если после тегов нет #text). - но так сделать не могу.
А еще. Когда до всех моих манипуляций/попыток приходил SOAP response ,
то String getTest1(...) в строку попадал символ конца строки - '\n'. - может через #text/
Спасибо за совет/ы и потраченное время.