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

 ID:               52319
 User updated by:  mmalone at nutshell dot com
 Reported by:      mmalone at nutshell dot com
 Summary:          SOAPServer does not use default argument values
 Status:           Open
 Type:             Bug
 Package:          SOAP related
 Operating System: Mac OS 10.4
 PHP Version:      5.3.2

 New Comment:

I just realized I accidentally switched the "Expected result" and
"Actual result" in the report. The expected result is the one returning
"param1 = 'SET', param2 = 'foo', param3 = 'bar', param4 = 'baz'"


Previous Comments:
------------------------------------------------------------------------
[2010-07-12 17:24:06] mmalone at nutshell dot com

Description:
------------
When calling a SOAP function or method in WSDL mode that has optional
arguments, the default value for those arguments will be ignored if the
SOAP request does not specify those parameters or sets them to nil.
Instead, the function will receive NULL for all such parameters.

Test script:
---------------
Here is a fully self-contained test script:
http://pastebin.com/szEye5nv



The script writes the WSDL file to the system's temporary directory.

Expected result:
----------------
<?xml version="1.0" encoding="UTF-8"?>

<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope";
xmlns:ns1="http://example.com/";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:enc="http://www.w3.org/2003/05/soap-encoding";><env:Body
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc";><ns1:exampleFunctionResponse
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding";><rpc:result>return</rpc:result><return
xsi:type="xsd:string">param1 = 'SET', param2 = NULL, param3 = NULL,
param4 =
NULL</return></ns1:exampleFunctionResponse></env:Body></env:Envelope>

Actual result:
--------------
<?xml version="1.0" encoding="UTF-8"?>

<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope";
xmlns:ns1="http://example.com/";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:enc="http://www.w3.org/2003/05/soap-encoding";><env:Body
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc";><ns1:exampleFunctionResponse
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding";><rpc:result>return</rpc:result><return
xsi:type="xsd:string">param1 = 'SET', param2 = 'foo', param3 = 'bar',
param4 =
'baz'</return></ns1:exampleFunctionResponse></env:Body></env:Envelope>


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



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

Reply via email to