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