From:             ctreptow at neutrasoft dot de
Operating system: Win7
PHP version:      Irrelevant
Package:          SOAP related
Bug Type:         Bug
Bug description:False values lead to empty tags

Description:
------------
Using the NTLM-Version of the soap client (can be found under
http://code.google.com/p/php-ews/source/browse/NTLMSoapClient.php)
i had problems filtering a WS-Page from Microsoft Navision on boolean
fields, but only if the filter-value is FALSE.

sample of wsdl is available on http://pastebin.com/R25p62sb

note: the problem does not occur in the NTLMSoapClient (just a
NTLM-wrapper), the generated message comes from the SoapClient.

tested on 5.3 and 5.4

Test script:
---------------
$params = array(
 "soap_version" => SOAP_1_1,
 "trace"        => true,
 "cache_wsdl" => WSDL_CACHE_NONE,
 "exceptions" => true
);
$url = "http://host:7047/DynamicsNAV/WS/Company/Page/Customers?wsdl";;
$client = @new NTLMSoapClient($url, $params);
$args = array(
 'setSize' => 300,
 'filter' => array(
  array("Field"=>'BoolField',"Criteria"=>false)
 )
);
$client->ReadMultiple($args);

Expected result:
----------------
intercepted SOAP-Message:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
        xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
        xmlns:ns1="urn:microsoft-dynamics-schemas/page/customers">
        <SOAP-ENV:Body>
                <ns1:ReadMultiple>
                        <ns1:filter>
                                <ns1:Field>BoolField</ns1:Field>
                                <ns1:Criteria>0</ns1:Criteria>
                        </ns1:filter>
                        <ns1:setSize>300</ns1:setSize>
                </ns1:ReadMultiple>
        </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


Actual result:
--------------
intercepted SOAP-Message:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
        xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
        xmlns:ns1="urn:microsoft-dynamics-schemas/page/customers">
        <SOAP-ENV:Body>
                <ns1:ReadMultiple>
                        <ns1:filter>
                                <ns1:Field>BoolField</ns1:Field>
                                <ns1:Criteria></ns1:Criteria>
                        </ns1:filter>
                        <ns1:setSize>300</ns1:setSize>
                </ns1:ReadMultiple>
        </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

-- 
Edit bug report at https://bugs.php.net/bug.php?id=63448&edit=1
-- 
Try a snapshot (PHP 5.4):   
https://bugs.php.net/fix.php?id=63448&r=trysnapshot54
Try a snapshot (PHP 5.3):   
https://bugs.php.net/fix.php?id=63448&r=trysnapshot53
Try a snapshot (trunk):     
https://bugs.php.net/fix.php?id=63448&r=trysnapshottrunk
Fixed in SVN:               https://bugs.php.net/fix.php?id=63448&r=fixed
Fixed in release:           https://bugs.php.net/fix.php?id=63448&r=alreadyfixed
Need backtrace:             https://bugs.php.net/fix.php?id=63448&r=needtrace
Need Reproduce Script:      https://bugs.php.net/fix.php?id=63448&r=needscript
Try newer version:          https://bugs.php.net/fix.php?id=63448&r=oldversion
Not developer issue:        https://bugs.php.net/fix.php?id=63448&r=support
Expected behavior:          https://bugs.php.net/fix.php?id=63448&r=notwrong
Not enough info:            
https://bugs.php.net/fix.php?id=63448&r=notenoughinfo
Submitted twice:            
https://bugs.php.net/fix.php?id=63448&r=submittedtwice
register_globals:           https://bugs.php.net/fix.php?id=63448&r=globals
PHP 4 support discontinued: https://bugs.php.net/fix.php?id=63448&r=php4
Daylight Savings:           https://bugs.php.net/fix.php?id=63448&r=dst
IIS Stability:              https://bugs.php.net/fix.php?id=63448&r=isapi
Install GNU Sed:            https://bugs.php.net/fix.php?id=63448&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=63448&r=float
No Zend Extensions:         https://bugs.php.net/fix.php?id=63448&r=nozend
MySQL Configuration Error:  https://bugs.php.net/fix.php?id=63448&r=mysqlcfg

Reply via email to