У меня следующая проблема.
Я отправляю запрос SOAP, и после получения ответа мне нужно «получить данные» из него, добавить «1» и отправить обратно как еще один запрос SOAP.
Мой SOAP-ответ на анализ выглядит так:
<multiRef id="id0" soapenc:root="0" >
<name xsi:type="soapenc:string">basketId</name>
<value xsi:type="soapenc:string">12</value>
</multiRef>
Я хочу получить это 12 и добавить к нему 1: я делаю это в SOAP UI с помощью XPATH, вставленной в новый запрос (я не хочу использовать что-либо еще). Чистый XML нового запроса выглядит так:
<multiRef id="id1" soapenc:root="0" >
<name xsi:type="soapenc:string">basketId</name>
<value xsi:type="soapenc:string">${GetBasketID_3#Response#//multiRef[name="newBasketId"]/value/text() +1 }</value>
</multiRef>
выражение xpath:
//multiRef[name="newBasketId"]/value/text() + 1
С xpathchecker в Firefox это работает, но SOAP UI отправляет туда пустое значение.
Как сделать так, чтобы синтаксический анализатор push SOI UI работал или написать выражение xpath в рабочем режиме?