HomoSapiens
Новичок
Здравствуйте коллеги.
Пишу шлюз к одному сервису и возникла проблема с SOAP запросами. А именно, не могу дописать пространство имен атрибутам. XSD выглядит так:
Код php такой:
В запросе получаю:
А надо:
Как видно надо атрибуту GUID элемента Message добавить префикс пространства имен. Подскажите как это сделать?
Пишу шлюз к одному сервису и возникла проблема с SOAP запросами. А именно, не могу дописать пространство имен атрибутам. XSD выглядит так:
PHP:
<xsd:element name="Session">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Message" >
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MsgType" type="tns:messageType"></xsd:element>
</xsd:sequence>
<xsd:attribute name="GUID" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
PHP:
$headerbody = array('Message' => array('MsgType' => $someMsgType,
'GUID' => $someGUID));
$header = new SoapHeader($NS, 'Session', $headerbody);
PHP:
<ns:Session>
<ns:Message GUID="1234567890ab">
<ns:MsgType>SimpleMessageRq</ns:MsgType>
</ns:Message>
</ns:Session>
PHP:
<ns:Session>
<ns:Message ns:GUID="1234567890ab">
<ns:MsgType>SimpleMessageRq</ns:MsgType>
</ns:Message>
</ns:Session>