ID:               49482
 Updated by:       dmi...@php.net
 Reported By:      joep at clickhere dot nl
-Status:           Assigned
+Status:           Feedback
 Bug Type:         SOAP related
 Operating System: Ubuntu
 PHP Version:      5.2.10
 Assigned To:      dmitry
 New Comment:

This is not a bug. In case of 'use'='ENCODED' ext/soap always adds type
information and this check would just useless. In this place, it adds
type name specidied in 'classmap' for LITERAL encoding because without
it receiver won't be able to determine the real input type. Correct me
if I'm wrong (I can't be 100% sure as I don't see your code) and
demonstrate it with a small example.

BTW the 'classmap' concept is very limited. It was extended with
'typemap' concept which may give user the full control over generated
XML. Probably you need to use it.


Previous Comments:
------------------------------------------------------------------------

[2009-09-06 10:29:52] joep at clickhere dot nl

Description:
------------
I was hunting a bug in our soap-client. 'xsi:type' appears in the xml,
even when the WSDL states 'use="literal"'.

Our client works fine with 5.2.4, but since 5.2.7/5.2.8 its broken
(Also tested 5.2.9)

Came across this fix in ext/soap/php_encoding.c

+    if (encode != enc && style == SOAP_LITERAL) {
        add_type = 1;
-    }

Shouldn't that be:

if (encode != enc && style == SOAP_ENCODED) {
        add_type = 1;                           
}





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


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

Reply via email to