Почему php SAOP отправляет дополнительные узлы? - PullRequest
0 голосов
/ 16 марта 2012

Я отправляю некоторые данные в веб-службу на базе Windows.

Я использую следующий код

$client = new soapclient("http://XXXXXXXXX/WEB_DAL/customer.asmx?wsdl", array('trace' => 1, 'exceptions' => 0));

$params -> productType = 281;
$params -> projectType = 1;

$client -> GetUserDataset("GetUserDataset", $params);

Я получаю soapFault

Когда я получаюпоследний отправленный XML с $ client -> __getLastRequest (), я получаю:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.vvvvvvvvv.com/">
    <SOAP-ENV:Body>
        <ns1:GetUserDataset/>
        <param1>
            <data/>
            <productType>281</productType>
            <projectType>1</projectType>
        </param1>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Что нужно отправить, это

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.vvvvvvvvv.com/">
    <SOAP-ENV:Body>
        <ns1:GetUserDataset/>
            <productType>281</productType>
            <projectType>1</projectType>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Я не понимаю, почему php отправляет эти дополнительные узлы

<param1><data/></param1>

Есть идеи?

...