Bonjour à tous,
Voilà après deux jours de recherche intense, je fais appelle à vous.
J'ai trouvé pas mal d'info sur mon errreur mais rien qui puisse la régler.
Donc je dois appeler un web service en php, lorsque j'envoie ma requête, j'ai cette erreur.
La ligne 50 correspond à
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Fatal error: SOAP Fault: (faultcode: VersionMismatch, faultstring: Wrong Version) in XXX/XXXX/XXXXX/testWS.php on line 50
WSDL
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR);
Et voici le code php
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 <xsd:element name="memberChoiceRequest"> <xsd:complexType> <xsd:sequence> <xsd:element name="federal" minOccurs="1" maxOccurs="1"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:length value="7"></xsd:length> </xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="birthdate" minOccurs="0" maxOccurs="1"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:length value="8"></xsd:length> </xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="controlDate" minOccurs="0" maxOccurs="1"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:length value="8"></xsd:length> </xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="rl" minOccurs="1" maxOccurs="1"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:enumeration value="F"></xsd:enumeration> <xsd:enumeration value="N"></xsd:enumeration> </xsd:restriction> </xsd:simpleType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="memberChoiceResponse"> <xsd:complexType> <xsd:sequence> <xsd:element name="returnmessage" type="schemamutas:returnmessage" maxOccurs="1" minOccurs="1"></xsd:element> <xsd:element name="memberList" type="schemamutas:member" maxOccurs="unbounded" minOccurs="0"></xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element>
Quelq'un aurai une idée ?
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
29
30
31
32
33 // Nouveau Client SOAP try { // Nouvelle instance de la classe soapClient $client = new SoapClient( $wsdl, array( 'location' => $wsdl, 'cache_wsdl' => WSDL_CACHE_NONE, 'user_agent' => __FUNCTION__, 'trace' => 1, //The trace option enables tracing of request so faults can be backtraced 'exceptions' => 1, //The exceptions option is a boolean value defining whether soap errors throw exceptions of type SoapFault. 'allow_self_signed' => 1, // For https 'proxy_host' => $proxy, 'proxy_login' => $user_proxy, 'proxy_password' => $pass_proxy, 'proxy_port' => $port_proxy, 'soap_version'=>'soap_1_2' //j'ai rajouté ceci en pensant que c'était là l'erreur ) ); $method = 'memberChoice'; $param = array ('federal' => "20120708", 'birthdate'=> "2909373", 'controlDate' => "20120802", 'rl'=>"N"); // memberChoice method // $method = 'insurabilityValid'; //$param = array ('federal' => $federal, 'birthdateTwin'=> '201207080', 'nationalNumber'=>'02070832154', 'titPach'=>'P' , 'controlDate' => '20120801', 'rl'=>'N'); // isInsurabiltyValid method // Appel de la méthode du service web $oReturn = $client -> __soapCall($method, $param); } catch (SoapFault $fault) { trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR); }
Merci d'avance !
Partager