#35399 [Asn]: Since fix of bug #35273 SOAP decoding of base64binary fails
| From: | thetaphi@php.net | Date: | Sat, 26 Nov 2005 10:42:47 +0000 |
| Subject: | #35399 [Asn]: Since fix of bug #35273 SOAP decoding of base64binary fails | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-89032@lists.php.net to get a copy of this message | ||
ID: 35399
User updated by: thetaphi@php.net
Reported By: thetaphi@php.net
Status: Assigned
Bug Type: SOAP related
Operating System: Solaris 9
PHP Version: 5.1.0
Assigned To: dmitry
New Comment:
The used wsdl:
http://ws.pangaea.de/ws/services/PangaVista?wsdl
Previous Comments:
------------------------------------------------------------------------
[2005-11-25 22:56:53] thetaphi@php.net
Interesting is the following fact:
It worked correctly as long as the old wsdl cache file from PHP
5.1.0RC5 (what was installed before) was valid.
So it seems that the patch for fixing the other bug parses the wsdl
correctly and initializes all php_sdl structures correctly but when
saving them to the cache file the base64binary xsd type seems to get
forgotten.
------------------------------------------------------------------------
[2005-11-25 21:43:04] thetaphi@php.net
Description:
------------
Installed today PHP 5.1.0 final and for the first time everything
worked OK. But after five hours the WSDL cache outdated and the
webservice refetched our WSDL. After that for the first time everything
works OK and like exspected (for PHP 5.1!) - base64binarys decode as
exspected (not like in 5.0 where this was missing).
After reloading the page and when the SOAP extension used the WSDL from
the cache the data was only available in raw base64 form.
When reverting the following patch it works as exspected:
http://cvs.php.net/diff.php/php-src/ext/soap/php_sdl.c?r1=1.88.2.1&r2=1.88.2.2&ty=h
Reproduce code:
---------------
* Clear the WSDL cache in /tmp
* Access a SOAP service that returns a base64binary somewhere in its
complex return type (this should work)
* reload the page (now the data is not decoded) - if you remove the
wsdl-* cache files it works again.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=35399&edit=1