Bonjour à tous,

Cela fait plusieurs jours que je parcours le Net à la recherche d'une solution à mon problème.

Je développe en VB .NET (of course) sous Visual Studio 2010.
Je réalise actuellement un EDI entre notre société et une compagnie d'assurance pour déposer des documents.
Pour cela, la compagnie m'a fourni un fichier WSDL et un fichier XSD.
J'ai donc généré la classe proxy via "Ajouter une référence de Service".
Jusque là tout va bien. J'arrive me connecter mais je n'arrive pas à passer la requête SOAP

Le problème se trouve au niveaux des NameSpace :

Je sors le message suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<envoyerDocumentsRequest xmlns="http://www.auxiliaire.fr/IGEService">
<enteteTechnique>
<identifiantFlux>635749044672083878</identifiantFlux>
<timeStampFlux>2015-08-11T15:41:07.41</timeStampFlux>
</enteteTechnique>
 
<enteteFonctionnel>
<expert>
<referenceDossierExpert>123456</referenceDossierExpert>
<nomExpert>TOTO</nomExpert>
<telExpert>01.02.03.04.05</telExpert>
<emailExpert>toto@email.fr</emailExpert>
</expert>
<dossier>
<numeroSocietaireAux>0123456789</numeroSocietaireAux>
<CRAC>true</CRAC>
<avenant01>false</avenant01>
</dossier>
</enteteFonctionnel>
<documents xmlns="">
<document>
<typeDocument>000_LET_ENV</typeDocument><rawDocument>
<xop:Include href="cid:http://tempuri.org/1/635749044677020152" xmlns:xop="http://www.w3.org/2004/08/xop/include"/></rawDocument>
</document>
</documents>
</envoyerDocumentsRequest>
</s:Body>
Mais pour que la requête SOAP soit reconnue par le parser, il faut qu'elle soit sous cette forme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.auxiliaire.fr/IGEService">
<tns:envoyerDocumentsRequest">
.....
J'ai tenté d'intercepter le message par IClientMessageInspector pour le modifier. Peine perdue, on peut ajouter des entêtes à la requête mais on ne peut modifier le corps du message.

Je n'ai pas trouvé comment faire pour ajouter le Namespace "xmlns:tns="http://www.auxiliaire.fr/IGEService" à l'enveloppe SOAP.

Si quelqu'un pouvait m'aider à avancer ce serait super.

En remerciant par avance.