J'ai un client WCF communiquant avec une implémentation de serveur inconnue sur laquelle je n'ai aucun contrôle. Ce client fonctionne correctement, il n'aime pas, ce qui semble être, des messages SOAP Fault mal formés. Les messages que je reçois ressemblent:Possible de consommer des messages d'erreur mal formés?
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <soap:Fault> <soap:faultcode>soap:Client</soap:faultcode> <soap:faultstring>...</soap:faultstring> <soap:detail>...</soap:detail> </soap:Fault> </soap:Body> </soap:Envelope>
Je crois selon le schéma de savon les éléments enfants ne doivent pas être qualifiés et nis pour ressembler à:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <soap:Fault> <faultcode>soap:Client</faultcode> <faultstring>...</faultstring> <detail>...</detail> </soap:Fault> </soap:Body> </soap:Envelope>
Y at-il quelque chose que je peux configurer ou override afin que je puisse consommer des messages qui arrivent dans ce dernier format afin que je puisse consommer les messages d'erreur au lieu des exceptions xml?
Peut-être que je l'ai raté quelque chose, mais je crois que tout cela est des choses que je peux faire pour le serveur et non le client. Corrigez-moi si je me trompe mais il est apparu que cela pourrait créer une implémentation de IErrorHandler, mais je crois que cela ne s'applique qu'au côté serveur. – Dave