#50547 [Com]: SoapServer Fatal errror in WSDL mode
ID: 50547
Comment by: jitka at darbujanova dot cz
Reported By: rsumibcay at reddoor dot biz
Status: Open
Bug Type: SOAP related
Operating System: Ubuntu Linux
PHP Version: 5.2.12
New Comment:
I can confirm this. (http://bugs.php.net/bug.php?id=50895)
Previous Comments:
------------------------------------------------------------------------
[2009-12-21 20:18:01] rsumibcay at reddoor dot biz
Description:
------------
SoapServer dies with fatal error in WSDL mode when a soap argument is a
ComplexType with a member defined as int in the XSD, but the member
value is passed as a non-numeric string.
Reproduce code:
---------------
1. Define a ComplexType with an int data member:
http://crkt190.reddoor.biz/fatalerror/complex_types.xsd
2. Define a WSDL that uses the ComplexType as an argument to the soap
function:
http://crkt190.reddoor.biz/fatalerror/fatalerror.wsdl
3. Create a soap envelope with a non-numeric string as the value for
the int data member:
http://crkt190.reddoor.biz/fatalerror/fatalerror-soap-envelope.xml
4. Make a soap request using the soap envelope in step 3.
Expected result:
----------------
The SoapServer should not die with a fatal error. The SoapServer should
respond with a SoapFault, or let the call pass through so the business
logic (mapped handler) can do validation and handle the error
appropriately.
Actual result:
--------------
500 HTTP response from server. The HTTP response body contains an error
message and stack trace.
Fatal error: SOAP-ERROR: Encoding Violation of encoding rules in ...
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=50547&edit=1
Thread (8 messages)