php error handler-> SOAP_Fault in V0.7.3

From: Date: Thu, 29 May 2003 02:20:55 +0000
Subject: php error handler-> SOAP_Fault in V0.7.3
References: 1  Groups: php.soap 
Request: Send a blank email to php-soap+get-692@lists.php.net to get a copy of this message
I just noticed that the SOAP_Server::callMethod function now unsets the global var $soap_server_fault and then checks if it is set when returning either the fault or the response. This seems to have broken the error handling mechanism, in that when I call trigger_error() the SOAP_ServerErrorHandler runs, and sets the $soap_server_fault global variable, but in callMethod, it remains unset and the fault is never returned. What was the reason that this was changed? Tristan. function callMethod($methodname, &$args) { global $soap_server_fault; // unset($soap_server_fault); set_error_handler("SOAP_ServerErrorHandler"); if ($args) { // call method with parameters if (isset($this->soapobject) && is_object($this->soapobject)) { $ret = @call_user_func_array(array(&$this->soapobject, $methodname),$args); } else { $ret = @call_user_func_array($methodname,$args); } } else { // call method w/ no parameters if (is_object($this->soapobject)) { $ret = @call_user_func(array(&$this->soapobject, $methodname)); } else { $ret = @call_user_func($methodname); } } restore_error_handler(); // return $soap_server_fault?$soap_server_fault:$ret; return isset($soap_server_fault)?$soap_server_fault:$ret; }

« previous php.soap (#692) next »