We have a .NET Client with a Web Reference to a SOAP Based Web Service. The method we are calling has a signature string request()
but when we call it we only ever receive a null value. The target service is receiving the request and responding with something other than null but our client only ever returns a null value
Looking at the WSDL, the response should be as follows:
<message name="requestResponse">
<part name="request" type="xsd:any"/>
</message>
The actual response looks like the following:
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:pt_service" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
<env:Body xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
<ns1:requestResponse env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
<rpc:result>textnoenc</rpc:result>
<response>
<result>12</result>
<message><![CDATA[Bad]]></message>
<error>
<code>0</code>
<desc><![CDATA[Bad]]></desc>
</error>
</response>
</ns1:requestResponse>
</env:Body>
</env:Envelope>
It appears the target service is responding with something that is not defined in the WSDL resulting in the client returning a null value but I am not sure about that
Can anyone shed some light on what might be happening here?
Note: no exceptions have been experienced on the client