ID:               35399
 User updated by:  [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
 Status:           Closed
 Bug Type:         SOAP related
 Operating System: Solaris 9
 PHP Version:      5.1.0
 Assigned To:      dmitry
 New Comment:

Works correctyl now after replacing my php_sdl.c with the CVS version.
Thanks!


Previous Comments:
------------------------------------------------------------------------

[2005-11-28 11:10:13] [EMAIL PROTECTED]

Fixed in CVS HEAD, PHP_5_1 and PHP_5_0.

Thank you for catching it.

------------------------------------------------------------------------

[2005-11-26 11:42:46] [EMAIL PROTECTED]

The used wsdl:
http://ws.pangaea.de/ws/services/PangaVista?wsdl

------------------------------------------------------------------------

[2005-11-25 22:56:53] [EMAIL PROTECTED]

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] [EMAIL PROTECTED]

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

Reply via email to