Re: NuSoap transition -- Question on parameter ordering.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear Peter,

I had a similar issue recently which was caused because I didn't provide a WSDL url to my SoapServer constructor.

Apparently the soap server can only map message arguments / parameters when it has a valid WSDL for reference (which more or less made sense to me afterwards).

I hope this is indeed the solution to your problem,

--
Kind regards,

Mike van Riel

On 7 nov 2010, at 23:25, Peter BrunnengrÃber <pbrunnen@bccglobal.com> wrote:

Hello all,
Question for the experts here as I am not sure what my options are... I searched around but the information on the php soap parameters for its options is not well documented (that I have found). So I am not sure and I thought I would ask here.

I have an application that I wrote against nusoap a little while ago. Its been working well, but the nusoap library slows things down quite a bit. Since I have had increased usage and server load is becoming an issues to watch, I decided to rewrite my internal api to make use of php's internal soap client versus using the nusoap add-on. Rewriting my api was not a big deal and I was so happy to finish. But when I swapped php soap calls with the nusoap calls my application broke in many places...

From looking at membrane, it looks like the parameters array which I am passing to the soap call is processed differently by php's soap than it was by nusoap. Nusoap would use the array key as the soap parameter for the value. Php's soap seems to ignore the key and only likes the values in the proper order. This would mean a complete rewrite as many of my parameter arrays are built on the fly. Either that or build some sort of reorganizer...

Anyone have any ideas? Is there an option to make the behavior similar to nusoap?


example:
---------- Parameters array in:
Array
(
   [module_name] => rht_units
   [select_fields] => Array
       (
           [0] => id
           [1] => name
       )
   [deleted] => 0
   [session] => bs06v3iq0ar17rif26h1kc1im8iluqcs
)

--------- Soap call captured:
 <SOAP-ENV:Body>
   <ns1:get_entry_list>
     <session xsi:type="xsd:string">rht_units</session>
     <module_name xsi:type="xsd:string">Array</module_name>
     <query xsi:type="xsd:string">0</query>
     <order_by xsi:type="xsd:string">200</order_by>
     <offset xsi:type="xsd:int">0</offset>
     <select_fields xsi:type="ns1:select_fields" />
     <max_results xsi:nil="true" />
     <deleted xsi:nil="true" />
   </ns1:get_entry_list>
 </SOAP-ENV:Body>





With kind regards. -Peter

--
PHP Soap Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


--
PHP Soap Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[Index of Archives]     [PHP Home]     [PHP Users]     [Kernel Newbies]     [PHP Database]     [Yosemite]

  Powered by Linux