SOAP-UI - Как передать XML внутри параметра - PullRequest
49 голосов
/ 19 апреля 2011

В SOAP-UI я делаю запрос к веб-сервису, подобному этому:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xxx="http://xxx.call/">
   <soapenv:Header/>
   <soapenv:Body>
      <cotf:call_XXX>
         <!--Optional:-->
         <arg0>
            <!--Optional:-->
            <parameter1>some text</parameter1>
            <!--Optional:-->
            <parameter2>XML string</parameter1>
         </arg0>
      </cotf:call_XXX>
   </soapenv:Body>
</soapenv:Envelope>

Я хотел бы знать, как я могу передать строку XML в параметре 2, поскольку, если я помещаю строку XML напрямую, она принимает узлы строки XML в качестве параметров запроса ....

Спасибо

Ответы [ 3 ]

111 голосов
/ 19 апреля 2011

Либо кодируйте необходимые объекты XML, либо используйте CDATA.

<arg0>
    <!--Optional:-->
    <parameter1>&lt;test>like this&lt;/test></parameter1>
    <!--Optional:-->
    <parameter2><![CDATA[<test>or like this</test>]]></parameter2>
 </arg0>
1 голос
/ 29 августа 2012

ПРИМЕЧАНИЕ. Этот вариант является альтернативой предыдущей версии .NET Framework 3.5 и более поздних версий.

Вы можете отправить его как сырой XML

<test>or like this</test>

Если вы объявите paramater2 как XElement тип данных

0 голосов
/ 18 февраля 2016

Для отправки CDATA в объекте запроса используйте метод SoapObject.setInnerText("...");.

...