ID:               30175
 User updated by:  waboring at 3gstech dot com
 Reported By:      waboring at 3gstech dot com
 Status:           Open
 Bug Type:         SOAP related
 Operating System: linux
 PHP Version:      5CVS-2004-09-21 (dev)
 New Comment:

The entire response is

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:ns1="urn:qweb"><SOAP-ENV:Body
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
id="_0"><ns1:HostInfo xsi:type="ns1:HostInfo"><name
xsi:type="xsd:string">blah blah some name field</name><shortDescription
xsi:type="xsd:string">This is a description. more blah blah
blah</shortDescription><ipAddress
xsi:type="xsd:string">127.0.0.1</ipAddress></ns1:HostInfo></SOAP-ENV:Body></SOAP-ENV:Envelope>


Previous Comments:
------------------------------------------------------------------------

[2004-09-21 01:39:36] waboring at 3gstech dot com

Description:
------------
I have a complex type returned in a SOAP reply and I am getting an
array with null values back from the soap client.

The array that is return has the correct keys, but the values are
always null.  The response has the values.  I tried this with NuSOAP
and it works fine.

The NuSoap script that works is at
http://www.newsblob.com/nusoap/qweb.php

I don't have a publicly available php5 install, but here is the code
that fails.

Reproduce code:
---------------
<?php
ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache

function xxx($var) {
 echo "<xmp>\n";
 print var_dump($var, TRUE);
 echo "</xmp>\n";
}

$client = new SoapClient('http://www.newsblob.com/qweb.wsdl',
                         array('trace' => 1,
                               'exceptions' => 1));
//ok try and get the host struct
$host = $client->qwebGetHostInfo();
xxx($host);


echo "<br><br>Request : ".xxx($client->__getLastRequest(), TRUE);
echo "<br>Response : ".xxx($client->__getLastResponse(), TRUE);
?>

Expected result:
----------------
I should see:

array(3) { ["name"]=>  string(25) "blah blah some name field"
["shortDescription"]=>  string(43) "This is a description. more blah
blah blah" ["ipAddress"]=>  string(9) "127.0.0.1" }



Actual result:
--------------
array(3) { ["name"]=>  NULL ["shortDescription"]=> NULL ["ipAddress"]=>
 NULL }


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=30175&edit=1

Reply via email to