N'hésite pas à jouer avec les options de l'importateur WSDL, en particulier "Unwind des paramètres littéraux"
J'ai eu quelques soucis aussi pour la transmission de paramètre en mode "literal"
L'importateur de Delphi 7 avait quelques bugs, l'implémentation du IInvokable aussi (TXSDate ne gérant que le format américain, problèmes de sérialization des énumérations)
Lorsque j'en avais la possibilité, je forçais l'utilisation de encoded comme dans le sujet Importateur WSDL + Option Literal = Comportement non souhaité !
le Serveur WS en PHP4 (NuSoap) ou PHP5 Zend WS semblait accepter des paramètres en mode "encoded" même si prévu à l'origine en litéral
tu peux tricher en modifier la WSDL en local pour l'importateur comme je l'ai proposé dans le sujet Changer le format dans SOAP
<soap:body use="literal" />
en
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
Personnellement, ensuite, je n'utilise plus la WSDL, la configuration du WS (IP+Port) est contenu dans la DB de l'application (le WS étant déployé sur plusieurs serveurs, c'est le même WS mais pour des clients différents)
Partager