Hallo,
ich versuche per PHP auf einen SOAP-Dienst zuzugreifen, der als einen Parameter den Typ ArrayOfKeyValueOfstringanyType erwartet.
Wenn ich nun den erzeugten Request anschaue, sieht der eigentlich ganz gut aus:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tempuri.org/" xmlns:ns2="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<SOAP-ENV:Body>
<ns1:Execute>
<ns1:pStrScriptPath>
server\silverlight\packages\purchaseorder\functions.py</ns1:pStrScriptPath>
<ns1:pStrFunction>
CreatePurchaseOrder()</ns1:pStrFunction>
<ns1:pObjParams>
<ns2:KeyValueOfstringanyType>
<ns2:Key>
gStrXml</ns2:Key>
<ns2:Value>
test</ns2:Value>
</ns2:KeyValueOfstringanyType>
</ns1:pObjParams>
</ns1:Execute>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Aber leider erhalte ich die Meldung:
[message:protected] => Der Formatierer hat beim Deserialisieren der Nachricht eine Ausnahme ausgelöst: Fehler beim Deserialisieren von Parameter http://tempuri.org/:pObjParams. Die InnerException-Nachricht war "Das Element "Value" aus dem Namespace "http://schemas.microsoft.com/2003/10/Serialization/Arrays" kann keinen untergeordneten Inhalt enthalten, der als Objekt deserialisiert werden sollen. Verwenden Sie XmlNode[] zum Deserialisieren dieses XML-Musters.". Weitere Details finden Sie unter "InnerException".
Weiß jemand, wie der Request korrekt aussehen muss? Der Entwickler der WCF-Anwendung hat leider auch keine Ahnung, sein C#-Client funktioniert.