用nusoap返回信封

时间:2014-03-25 10:08:43

标签: php soap

我是nusoap的新成员并开发了一个Web服务服务器。 我必须回复这样的回复:

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<UpdateLeadResponse xmlns="http://icrm.pat.it/fiat/ws">
  <UpdateLeadResult>
    <ID>string</ID>
    <ResultCode>OK</ResultCode>
    <ResultDescription>string</ResultDescription>
  </UpdateLeadResult>
</UpdateLeadResponse>
</soap:Body>
</soap:Envelope>

我试图返回StdClass

$rep = new StdClass();
$test = new stdClass();
$test->LeadID = "";
$test->ResultCode = "OtherError";
$test->ResultDescription = $errorDesc;
$rep->UpdateLeadResult = $test;

我使用yii框架,所以在我的函数中,我声明了这个

/**
    * @param string $sXml
    * @param string $sFilters
    * @return mixedHello you !
    * @soap
    */

但是现在当我用SoapUI进行测试时,我收到了这个,所以如何删除附带的标签&#39; return&#39;

<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:WebServControllerwsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
 <SOAP-ENV:Body>
  <ns1:ProcessRequestResponse>
     <return xsi:type="SOAP-ENC:Struct">
        <UpdateLeadResult xsi:type="SOAP-ENC:Struct">
           <LeadID xsi:type="xsd:string"></LeadID>
           <ResultCode xsi:type="xsd:string">OK</ResultCode>
           <ResultDescription xsi:type="xsd:string"/>
        </UpdateLeadResult>
     </return>
  </ns1:ProcessRequestResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

非常感谢

1 个答案:

答案 0 :(得分:0)

我发现这篇帖子并且有效地我必须实现的wsdl不能包含这个retrun标签所以我必须删除这个

[链接] http://pear.php.net/bugs/bug.php?id=2877 [/链接]

但我不知道在nusoap中做出改变的地方。

感谢您的帮助