soapUIは、ウェブサービスのテストによく使用されるツールです。
パラメータがxmlの場合
次のように:
<root>
<id>1</id>
<name>Mike</name>
</root>
soapUI解析の場合、<root>タイプはノードであると想定され、結果としてパラメーターが正しく渡されません。
解決策:
レイヤーをxmlでラップ<![CDATA [xml content ...]]>
上記のxmlは
<![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<root>
<id>1</id>
<name>Mike</name>
</root>]]>
同様に、curlのパラメーターにxmlがある場合、それらもエスケープする必要があり、webserviceを呼び出す例は次のとおりです。
curl -H 'Content-Type:text/xml;charset=utf-8' -d '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pub="http://publish.service.boco.com/"><soapenv:Header/><soapenv:Body><pub:call><reqData><![CDATA[<wsParam><code>WS_WIRELESS_CODE</code></wsParam>]]></reqData></pub:call></soapenv:Body></soapenv:Envelope>' http://restar.gmcc.net:9044/ws/common?wsdl