#36854 [NEW]: SOAP Server cannot issue a SoapFault when a SoapClient is created

From: Date: Sat, 25 Mar 2006 00:13:36 +0000
Subject: #36854 [NEW]: SOAP Server cannot issue a SoapFault when a SoapClient is created
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-94866@lists.php.net to get a copy of this message
From: markslemko at gmail dot com Operating system: sever 2003 & Open BSD PHP version: 5.1.2 PHP Bug Type: SOAP related Bug description: SOAP Server cannot issue a SoapFault when a SoapClient is created Description: ------------ I am trying to use a SOAP client within a SOAP server and it caused the SOAP server to fail to respond properly to its clients with a SoapFault when a problem arose. It works fine if there is no error to return to the client. so a diagram might help... [SOAP Client A] | | [SOAP Server A] +[SOAP Client B] ---> [SOAP Server B] +[return SoapFault] ...looks like we got no XML document... The response (SoapFault) to the SOAP Client A looks like it is empty. I'm wondering if the SoapFault mechanism is corrupted by the SoapClient initialization. I've tested the idea of faking a response from the SOAP Server B, i.e. don't create a SOAP Client B, and the returning SoapFault works as expected. Reproduce code: --------------- // code snippets to get help my issue accross $server = new SoapServer(null,array('uri'=>$NAMESPACE)); $server->setClass('MyClass'); $server->handle(); // a class that creates a soap client within the server class MyClass { public function Make($something) { $client = new SoapClient('http://somewhere.com/soap.wsdl'); return new SoapFault('Validation','bogus'); } } // -- another file -- an originating client try { $clientA = new soapClient('http://localhost/soap.php'); } catch (SoapFault $e) { echo $e->faultstring; // error occurs here. wrong error message => expected "bogus" } Expected result: ---------------- expected the message "bogus" to be echoed expect to catch a SoapFault with an error message on the originating client (Client A above). Actual result: -------------- looks like we got no XML document -- Edit bug report at http://bugs.php.net/?id=36854&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=36854&r=trysnapshot44 Try a CVS snapshot (PHP 5.1): http://bugs.php.net/fix.php?id=36854&r=trysnapshot51 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=36854&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=36854&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=36854&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=36854&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=36854&r=needscript Try newer version: http://bugs.php.net/fix.php?id=36854&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=36854&r=support Expected behavior: http://bugs.php.net/fix.php?id=36854&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=36854&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=36854&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=36854&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=36854&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=36854&r=dst IIS Stability: http://bugs.php.net/fix.php?id=36854&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=36854&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=36854&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=36854&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=36854&r=mysqlcfg

« previous php.bugs (#94866) next »