Edit report at http://bugs.php.net/bug.php?id=49278&edit=1
ID: 49278 User updated by: jeroen at asystance dot nl Reported by: jeroen at asystance dot nl Summary: SoapClient::__getLastResponseHeaders returns NULL if wsdl operation !has output Status: Verified Type: Bug Package: SOAP related Operating System: linux PHP Version: 5.3.3 Block user comment: N Private report: N New Comment: Also, if I add 'feature' => SOAP_WAIT_ONE_WAY_CALLS to the options array in the SoapClient constructor, instead of nothing, I get PHP Fatal error: Uncaught SoapFault exception: [Client] looks like we got no XML document Previous Comments: ------------------------------------------------------------------------ [2011-02-11 12:31:01] jeroen at asystance dot nl Just wanted to confirm this bug is still present in 5.3.3 ------------------------------------------------------------------------ [2009-09-19 20:19:00] sjo...@php.net Thank you for your bug report. Apparently, the response is not parsed at all when the method returns nothing. This gives problems with getLastResponseHeaders, as the bug reporter described. Furthermore, if the server returns a HTTP status such as 404 Not Found or 500 Internal Error, the client should does not throw a SoapFault, where it should. See ext/soap/php_http.c:771. ------------------------------------------------------------------------ [2009-08-17 10:07:52] jeroen at asystance dot nl Description: ------------ For <wsdl:operation>s that do not have output, SoapClient does not return last response headers. Reproduce code: --------------- download http://jayvee.nl/soaptest3.tar change URL in interface.wsdl to point to SOAPtest.php SOAPtest.php contains both client and server code, so just run php SOAPtest.php Expected result: ---------------- SoapClient::getLastResponseHeaders should return string Actual result: -------------- SoapClient::getLastResponseHeaders returns NULL ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=49278&edit=1