web-dev-qa-db-fra.com

SOAP-UI - Comment passer le paramètre inside xml

Dans SOAP-UI, je fais une demande à un service Web comme celui-ci:

<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>

Ce que j'aimerais savoir, c'est comment je peux passer une chaîne XML sur le paramètre 2 car si je mets directement la chaîne XML, elle assume les nœuds de chaîne XML comme paramètres de requête ....

Merci

46
RedEagle

Encodez les entités XML nécessaires ou utilisez CDATA.

<arg0>
    <!--Optional:-->
    <parameter1>&lt;test>like this&lt;/test></parameter1>
    <!--Optional:-->
    <parameter2><![CDATA[<test>or like this</test>]]></parameter2>
 </arg0>
106
Alin Purcaru

NOTE: Celui-ci est juste une alternative au précédent .NET Framework 3.5 et supérieur fourni

Vous pouvez l'envoyer au format xml brut

<test>or like this</test>

Si vous déclarez le paramater2 comme XElement type de données

1
bitsmonkey

Pour envoyer CDATA dans un objet de requête, utilisez la méthode SoapObject.setInnerText("...");

0
Randnum