Edit report at http://bugs.php.net/bug.php?id=47584&edit=1

 ID:                 47584
 Comment by:         gem at rellim dot com
 Reported by:        gem at rellim dot com
 Summary:            WSDL error in soapClient causes Fatal Error
 Status:             Feedback
 Type:               Bug
 Package:            SOAP related
 Operating System:   Linux
 PHP Version:        5.2.9
 Assigned To:        dmitry
 Block user comment: N

 New Comment:

It fails similarly without XDebug:



# php -v

PHP 5.3.3 (cli) (built: Jul 26 2010 14:55:07) 

Copyright (c) 1997-2010 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

    with eAccelerator v0.9.6, Copyright (c) 2004-2010 eAccelerator, by 

eAccelerator



# php tmp.php

PHP Fatal error:  SOAP-ERROR: Parsing WSDL: Couldn't load from 'non-

existent.wsdl' : failed to load external entity "non-existent.wsdl"

 in /tmp/tmp.php on line 3

ok

 

#


Previous Comments:
------------------------------------------------------------------------
[2010-09-02 19:15:22] gem at rellim dot com

Forgot my version details:



# php -v

PHP 5.3.3 (cli) (built: Jul 26 2010 14:55:07) 

Copyright (c) 1997-2010 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

    with eAccelerator v0.9.6, Copyright (c) 2004-2010 eAccelerator, by 

eAccelerator

    with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans

------------------------------------------------------------------------
[2010-09-02 19:14:24] gem at rellim dot com

Your example fails for me, I can not catch the error:



# cat tmp.php

<?php  

try {  

    $x = new SoapClient("non-existent.wsdl");  

} catch (Exception $e) {  

}  

echo "ok\n";

?> 

 





# php tmp.php

PHP Warning:  SoapClient::SoapClient(): I/O warning : failed to load
external 

entity "non-existent.wsdl" in /tmp/tmp.php on line 3

PHP Stack trace:

PHP   1. {main}() /tmp/tmp.php:0

PHP   2. SoapClient->SoapClient() /tmp/tmp.php:3

PHP Fatal error:  SOAP-ERROR: Parsing WSDL: Couldn't load from 'non-

existent.wsdl' : failed to load external entity "non-existent.wsdl"

 in /tmp/tmp.php on line 3

PHP Stack trace:

PHP   1. {main}() /tmp/tmp.php:0

PHP   2. SoapClient->SoapClient() /tmp/tmp.php:3

#

------------------------------------------------------------------------
[2010-09-02 10:40:34] dmi...@php.net

BTW despite SoapClient emits a fatal error it already throws exception
which can be caught (even in 5.2 brunch).



<?php

try {

  $x = new SoapClient("non-existent.wsdl");

} catch (Exception $e) {

}

echo "ok\n";'

?>

------------------------------------------------------------------------
[2010-06-24 01:55:11] gem at rellim dot com

This is a still a 100% show  stopper for me.  I can not make PHP pages
live

that will crash on simple network errors.

------------------------------------------------------------------------
[2010-06-22 10:35:23] florent dot biville at insa-rouen dot fr

I can confirm I encounter the same problem.

Despite everything documented, problems with WSDL reading will trigger a
fatal error.

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


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    http://bugs.php.net/bug.php?id=47584


-- 
Edit this bug report at http://bugs.php.net/bug.php?id=47584&edit=1

Reply via email to