Bonjour,
J'appelle un webservice possédant le WSDL suivant :
Avec le code 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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 <?php include("..\\..\\config.php"); $xml_file = <<<XML <?xml version="1.0" encoding="UTF-8"?><wsdl:definitions name="PrcRestitutionsIF" targetNamespace="http://IBPEPPPrcRestitutions/PrcRestitutionsIF" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://IBPEPPPrcRestitutions/PrcRestitutionsIF" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <wsdl:types> <xsd:schema targetNamespace="http://IBPEPPPrcRestitutions/PrcRestitutionsIF"> <xsd:element name="invoke"> <xsd:complexType> <xsd:sequence> <xsd:element name="xmlFlow" nillable="false" type="xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="invokeResponse"> <xsd:complexType> <xsd:sequence> <xsd:element name="invokeReturn" nillable="true" type="xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="invokeFault1_fault" nillable="true" type="xsd:string"/> </xsd:schema> </wsdl:types> <wsdl:message name="invokeRequestMsg"> <wsdl:part element="tns:invoke" name="invokeParameters"/> </wsdl:message> <wsdl:message name="invokeResponseMsg"> <wsdl:part element="tns:invokeResponse" name="invokeResult"/> </wsdl:message> <wsdl:message name="invoke_faultMsg"> <wsdl:part element="tns:invokeFault1_fault" name="fault"/> </wsdl:message> <wsdl:portType name="PrcRestitutionsIF"> <wsdl:operation name="invoke"> <wsdl:input message="tns:invokeRequestMsg" name="invokeRequest"/> <wsdl:output message="tns:invokeResponseMsg" name="invokeResponse"/> <wsdl:fault message="tns:invoke_faultMsg" name="fault"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="WSExport1_PrcRestitutionsIFHttpBinding" type="tns:PrcRestitutionsIF"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="invoke"> <soap:operation soapAction=""/> <wsdl:input name="invokeRequest"> <soap:body use="literal"/> </wsdl:input> <wsdl:output name="invokeResponse"> <soap:body use="literal"/> </wsdl:output> <wsdl:fault name="fault"> <soap:fault name="fault" use="literal"/> </wsdl:fault> </wsdl:operation> </wsdl:binding> <wsdl:service name="WSExport1_PrcRestitutionsIFHttpService"> <wsdl:port binding="tns:WSExport1_PrcRestitutionsIFHttpBinding" name="WSRestitutions_PrcRestitutionsIFHttpPort"> <soap:address location="http://31.31.50.155:9443/IBPEPPPrcRestitutionsWeb/sca/WSRestitutions"/> </wsdl:port> </wsdl:service> </wsdl:definitions> XML; echo $xml_file; ?>
Le problème c'est que mon message soap est vide, lorsque je fait un $client->__getLastRequest()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 //on est dans le cadre d'une nouvelle restit $wsdl_extrait= "http://localhost/ExtraitXmlwsdl.php"; $passphrase = "wssepa"; $client = new SoapClient($wsdl_extrait, array('location' => $URL_WS_Transfert_local, 'local_cert' => $local_cert, 'passphrase' => $passphrase, 'trace' => 1)); $result = $client->__soapCall("invoke",array("xmlFlow" => "TOTO" ));
J'ai le résultat suivant :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://IBPEPPPrcRestitutions/PrcRestitutionsIF"><SOAP-ENV:Body><ns1:invoke/></SOAP-ENV:Body></SOAP-ENV:Envelope>
Pourquoi mon message message soap envoyé à mon WS est vide ?
Partager