php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #37783 SOAP call response is not parsed
Submitted: 2006-06-12 09:01 UTC Modified: 2006-06-26 12:40 UTC
Votes:1
Avg. Score:4.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: michal dot taborsky at gmail dot com Assigned: dmitry (profile)
Status: Not a bug Package: SOAP related
PHP Version: 5.1.4 OS: CentOS 4.3 x86_64
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: michal dot taborsky at gmail dot com
New email:
PHP Version: OS:

 

 [2006-06-12 09:01 UTC] michal dot taborsky at gmail dot com
Description:
------------
The bug was reported and supposedly fixed long time ago as 29844 (and few more). But I get exactly the same result. The webservice works fine on other versions (namely 5.0.3) and other servers, but with this one it just returns NULL, though the __getLastResponse() contains proper response.

Configure options:
'./configure' '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--with-libdir=lib64' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--disable-debug' '--with-pic' '--disable-rpath' '--with-bz2' '--with-curl' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-png' '--with-pspell' '--with-expat-dir=/usr' '--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-track-vars' '--enable-trans-sid' '--enable-yp' '--enable-wddx' '--with-pear=/usr/share/pear' '--without-kerberos' '--enable-ucd-snmp-hack' '--enable-memory-limit' '--enable-shmop' '--enable-calendar' '--enable-dbx' '--enable-dio' '--with-mime-magic=/etc/httpd/conf/magic' '--without-sqlite' '--with-libxml-dir=/usr' '--with-xml' '--with-apxs2=/usr/sbin/apxs' '--with-mysql' '--with-gd' '--with-dom' '--disable-dba' '--with-pgsql' '--enable-soap'

Reproduce code:
---------------
<?php
try {
    $s= new SoapClient('authority.wsdl', array("trace" => true, "exceptions"=>true));
    $r=$s->getTokens('aaa','bbb','ccc');
    var_dump($r);
} catch (SoapFault $e) {
    echo $e;
}
echo $s->__getLastRequest();
echo $s->__getLastResponse();

?>


Expected result:
----------------
string(129) "<?xml version="1.0"?>
<authorityResponse>
<error>
<code>1</code>
<message>Login incorrect</message>
</error>
</authorityResponse>"
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:getTokens><username>aaa</username><password>bbb</password><service>ccc</service></SOAP-ENV:getTokens></SOAP-ENV:Body></SOAP-ENV:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:getTokensResponse><tokens>&lt;?xml version="1.0"?&gt;
&lt;authorityResponse&gt;
&lt;error&gt;
&lt;code&gt;1&lt;/code&gt;
&lt;message&gt;Login incorrect&lt;/message&gt;
&lt;/error&gt;
&lt;/authorityResponse&gt;</tokens></SOAP-ENV:getTokensResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>


Actual result:
--------------
NULL
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:getTokens><username>aaa</username><password>bbb</password><service>ccc</service></SOAP-ENV:getTokens></SOAP-ENV:Body></SOAP-ENV:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:getTokensResponse><tokens>&lt;?xml version="1.0"?&gt;
&lt;authorityResponse&gt;
&lt;error&gt;
&lt;code&gt;1&lt;/code&gt;

&lt;message&gt;Login incorrect&lt;/message&gt;
&lt;/error&gt;
&lt;/authorityResponse&gt;</tokens></SOAP-ENV:getTokensResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-06-19 17:01 UTC] tony2001@php.net
Assigned to the maintainer.
 [2006-06-26 11:32 UTC] dmitry@php.net
Could you post your WSDL file here or send it to me by email.
 [2006-06-26 12:40 UTC] dmitry@php.net
The bug was in WSDL file, that specified empty output "parts".

        <wsdl:operation name="getTokens">
            <soap:operation soapAction="urn:#getTokens" style="rpc"/>
            <wsdl:input>
                <soap:body parts="username password service" use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body parts="" use="literal"/>
            </wsdl:output>
        </wsdl:operation>

 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Fri May 09 15:01:27 2025 UTC