PHP NUSOAP: как определить сложный тип, когда ожидаются атрибуты? - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь написать свой SOAP-сервер (NUSOAP), но я не могу правильно определить мой wsdl, потому что ожидаю атрибуты вместо узлов.

Мне нужно получить что-то вроде этого:

<SOAP-ENV:Envelope xmlns:......>
<SOAP-ENV:Body>
<ns1:methodname attribute1="value1" attribute2="value2" attribute3="value3"/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Нужно ли регистрировать сложный тип?Я пробовал:

$server->wsdl->addComplexType('DocRequest', 'complexType', 'struct', 'all', '', 
array( 'attribute1' => array('name'=>'attribute1', 'type' => 'xs:attribute'), 
       'attribute2' => array('name'=>'attribute2', 'type' => 'xs:attribute'), 
       'attribute3' => array('name'=>'attribute3', 'type' => 'xs:attribute') 
));

И затем я определяю свой метод:

$server->register( 'methodName', array('DocRequest' => 'tns:DocRequest'), array(.....), ..... );

Я не знаю, что я делаю неправильно ...

...