php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #49278 SoapClient::__getLastResponseHeaders returns NULL if wsdl operation !has output
Submitted: 2009-08-17 10:07 UTC Modified: 2011-02-11 12:37 UTC
Votes:12
Avg. Score:4.3 ± 0.7
Reproduced:9 of 9 (100.0%)
Same Version:3 (33.3%)
Same OS:5 (55.6%)
From: jeroen at asystance dot nl Assigned:
Status: Verified Package: SOAP related
PHP Version: 5.3.3 OS: linux
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2009-08-17 10:07 UTC] 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

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2009-09-19 20:19 UTC] sjoerd@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.
 [2011-02-11 12:31 UTC] jeroen at asystance dot nl
-PHP Version: 5.3SVN-2009-08-17 (snap) +PHP Version: 5.3.3
 [2011-02-11 12:31 UTC] jeroen at asystance dot nl
Just wanted to confirm this bug is still present in 5.3.3
 [2011-02-11 12:37 UTC] jeroen at asystance dot nl
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
 [2016-06-08 12:21 UTC] vavra at 602 dot cz
I observe this issue, if operation doesn't have any output and also if have output. 

Windows 10 x64, 
PHP 5.6.17 (cli) (built: Jan  6 2016 13:28:25)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
    with Xdebug v2.4.0RC4, Copyright (c) 2002-2016, by Derick Rethans
 [2017-11-24 10:26 UTC] bepeppered at gmail dot com
Is there any fix in future? It also happens on 7.1.11
 
PHP Copyright © 2001-2023 The PHP Group
All rights reserved.
Last updated: Mon Oct 02 06:01:24 2023 UTC