|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2009-02-13 23:07 UTC] felipe@php.net
[2009-02-21 01:00 UTC] php-bugs at lists dot php dot net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Oct 27 03:00:02 2025 UTC |
Description: ------------ Hello All, I am trying to use soap php's soap client(version 5.2.6) with axis 1.4. The axis's wsdl is WSI compliant and doc\literal\wrapped. The problem is that the soap client does not create the soap body correctly, e.g it uses SOAP-ENC structures(both on wsdl and on non-wsdl modes). For example, the following php structure: stdClass Object ( [pagingFilteringSortingParameters] => stdClass Object ( [startItemIndex] => 0 [endItemIndex] => 34 [filterList] => Array ( [0] => filterList Object ( [fieldName] => IPAddress [fieldValue] => 149 [filterType] => likeFilterType ) [1] => filterList Object ( [fieldName] => gatewayType [fieldValue] => i40 [filterType] => likeFilterType ) ) ) ) is translated into the following soap body: <SOAP-ENV:Body> <ns1:getBranchPartialList> <pagingFilteringSortingParameters> <startItemIndex> 0 </startItemIndex> <endItemIndex> 34 </endItemIndex> <filterList> <SOAP-ENC:Struct> <fieldName> IPAddress </fieldName> <fieldValue> 149 </fieldValue> <filterType> likeFilterType </filterType> </SOAP-ENC:Struct> <SOAP-ENC:Struct> <fieldName> gatewayType </fieldName> <fieldValue> i40 </fieldValue> <filterType> likeFilterType </filterType> </SOAP-ENC:Struct> </filterList> </pagingFilteringSortingParameters> </ns1:getBranchPartialList> </SOAP-ENV:Body> Instead of the following structure: <SOAP-ENV:Body> <ns1:getBranchPartialList xmlns:ns1="http://xml.avaya.com/im/decm/guiws/07062006"> <pagingFilteringSortingParameters> <startItemIndex> 0 </startItemIndex> <endItemIndex> 34 </endItemIndex> <filterList> <fieldName> IPAddress </fieldName> <fieldValue> 149 </fieldValue> <filterType> likeFilterType </filterType> </filterList> <filterList> <fieldName> gatewayType </fieldName> <fieldValue> i40 </fieldValue> <filterType> likeFilterType </filterType> </filterList> <sorterList> <fieldName> branchName </fieldName> <descending> true </descending> </sorterList> </pagingFilteringSortingParameters> </ns1:getBranchPartialList> What i suggest is to add a flag to the soapClient\SoapServer feature flag that will use the array name instead of SOAP-ENC:Struct. The same rule should apply for arrays. If anyone wishes to reproduce this problem, please send an email to sanderovich@avaya.com and i will send the source codes. Thanks, Oren