RE: Re: Java/Oracle server, PHP 5.1.2 client, array of complexTypes, Deserializer error

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

 



On Wed, 18 Jan 2006 11:07:53 +0300, Dmitry Stogov wrote:

> This is well known issue, but not a php/soap bug.
> The problem that some SOAP implementations don't confirm to SOAP
> specification and don't accept types derived from array.
> 
> See: http://www.w3.org/TR/2000/NOTE-SOAP-20000508/#_Toc478383522
> 
> "SOAP arrays are defined as having a type of "SOAP-ENC:Array" or A TYPE
> DERIVED THERE FROM."
> 
Well, basically it is a php/soap bug. When php/soap creates the request it
does not use the appropriate name for the struct which is specified in the
wsdl. For this example the wsdl specifies that the struct should be named
Bar and not item. So what happens at the server side? The server tries to
find any schema/namespace which specifies how an element item must be
serialized/deserialized, but of course fails since this is not specified
in any schema/namespace. The use of item to specify structs inside an
array was already deprecated in soap1.1 and is no longer valid in soap1.2.
As of soap1.2 all implementation must follow the specifications strict if
the want to use rpc/encoded or else the only way is document/literal.

Once again I must emphasize: This is a bug i php/soap which must be
corrected or otherwise you cannot use it for making client/servers which
will connect to Java, C#, C/C++ or any other statically typed languages.

-- 
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917

-- 
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