ZF-3958: Wrong call for new SoapFault in Zend_Soap_Server::fault() breaks SOAP exception handling

Issue Type: Bug Created: 2008-08-15T06:22:19.000+0000 Last Updated: 2008-11-13T14:10:07.000+0000 Status: Resolved Fix version(s): - 1.7.0 (17/Nov/08)

Reporter: Patrick Schulz (pschulz) Assignee: Benjamin Eberlei (beberlei) Tags: - Zend_Soap_Server

Related issues: Attachments: - Server.php.patch


SoapFault expects the code parameter being a string instead of an integer. If code is an integer, the SoapException reports an internal server error instead of the correct one.

The correct call has to be:

return new SoapFault( (string) $code, message );


Posted by T.Lechat (zecat) on 2008-08-29T05:30:21.000+0000

You're correct, line 799 of server.php needs to have (string) to works correctly. Now I can register Exception and use it in the handled class. Thanks.

Posted by Andy Thompson (at465) on 2008-09-24T09:53:44.000+0000

Shouldn't this be considered high priority? It effectively breaks exception handling, as Exception->getCode() is always is an integer.

Posted by Patrick Schulz (pschulz) on 2008-09-29T17:01:06.000+0000

This is the patch. I'm not sure if it is the correct format. Please give feedback.

Posted by Benjamin Eberlei (beberlei) on 2008-10-27T09:26:32.000+0000

Fixed in trunk

Posted by Wil Sinclair (wil) on 2008-11-13T14:10:07.000+0000

Changing issues in preparation for the 1.7.0 release.

Have you found an issue?

See the Overview section for more details.


© 2006-2018 by Zend, a Rogue Wave Company. Made with by awesome contributors.

This website is built using zend-expressive and it runs on PHP 7.