Hi Guys,
Bit of a chancer here, as I'm not sure how many of you guys deal with SOAP etc...
I'm connecting to a SOAP Server that is being run under Perl. Unfortunately, there is no WSDL for this server, and all I have to go on is legacy Perl code.
When I receive back a response from the SOAP Server, the data is wrapped in gensym tags:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:apachens="http://xml.apache.org/xml-soap" xmlns:xsd="http://www.w3.org/2001/XMLSchema" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<API_ExecuteResponse xmlns="http://server.co.uk/API">
<s-gensym1437 xsi:type="xsd:string">
remote_pass</s-gensym1437>
<s-gensym1439 xsi:type="xsd:string">
*****</s-gensym1439>
<s-gensym1441 xsi:type="xsd:string">
password</s-gensym1441>
<s-gensym1443 xsi:type="xsd:string">
*****</s-gensym1443>
<s-gensym1453 xsi:type="xsd:string">
error_string</s-gensym1453>
<s-gensym1455 xsi:nil="true" />
</API_ExecuteResponse>
</soap:Body>
</soap:Envelope>
(Above has been snipped).
In the Perl code, the above is handled internally, and it will create the key=>value pairs as an array. However, I can't get this to work in PHP.
The perl code makes use of $result->paramsout; to do this (it appears).
To make things even more difficult, the digits within the gensym tags are randomly assigned, so each request is different.
Any ideas what I can do to get this to work?
Cheers,
Jee
Bit of a chancer here, as I'm not sure how many of you guys deal with SOAP etc...
I'm connecting to a SOAP Server that is being run under Perl. Unfortunately, there is no WSDL for this server, and all I have to go on is legacy Perl code.
When I receive back a response from the SOAP Server, the data is wrapped in gensym tags:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:apachens="http://xml.apache.org/xml-soap" xmlns:xsd="http://www.w3.org/2001/XMLSchema" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<API_ExecuteResponse xmlns="http://server.co.uk/API">
<s-gensym1437 xsi:type="xsd:string">
remote_pass</s-gensym1437>
<s-gensym1439 xsi:type="xsd:string">
*****</s-gensym1439>
<s-gensym1441 xsi:type="xsd:string">
password</s-gensym1441>
<s-gensym1443 xsi:type="xsd:string">
*****</s-gensym1443>
<s-gensym1453 xsi:type="xsd:string">
error_string</s-gensym1453>
<s-gensym1455 xsi:nil="true" />
</API_ExecuteResponse>
</soap:Body>
</soap:Envelope>
(Above has been snipped).
In the Perl code, the above is handled internally, and it will create the key=>value pairs as an array. However, I can't get this to work in PHP.
The perl code makes use of $result->paramsout; to do this (it appears).
To make things even more difficult, the digits within the gensym tags are randomly assigned, so each request is different.
Any ideas what I can do to get this to work?
Cheers,
Jee