Bonjour a tous,

On m a fournit un fichier WSDL pour implementer un client soap.
Etant novice sur l'utilisation de soap, y a til une methode "propre" afin de respecter le format demander ou faut il lire directement les methodes a implementer dans le fichier?

Ensuite, a priori sur le fichier il faut redefinir le soap:adress location

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<service name="MMIE">
    <documentation>MMIE Quantities Web Service</documentation>
    <port name="MMIE" binding="tns:MMIESoapBinding">
    <!-- URL à récuperer sur votre administration -->
      <soap:address location="https://site.fr/ws/XXXXX/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/>
    </port>
  </service>
probleme, je vois pas comment le redefinir, le fichier wdsl n'étant pas modifiable.

Malgré tout j ai tenté un client soap:

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
	ini_set('soap.wsdl_cache_enabled', 0);
 
	// Nouveau Client SOAP
	try {
		// Nouvelle instance de la classe soapClient
		$url= ;
		$client = new SoapClient($_POST['soap_url'], array('trace' => 1));
		try{
			outTab($client->__getFunctions());
			$oReturn =  $client -> __soapCall('setQuantity', array('referenceId' =>'12530','referenceQuantity'=>0));
		} catch (SoapFault $fault) {
			outTab("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR);
		}
		// affiche le résultat
		outTab($oReturn);
	} catch (SoapFault $fault) {
		out( 'erreur : '.$fault);
	}
Voici les methodes retourner par getFunctions:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
UNKNOWN setQuantity(UNKNOWN $referenceId, UNKNOWN $referenceQuantity)
UNKNOWN setPrice(UNKNOWN $referenceId, UNKNOWN $referencePrice)
Quand a la requete demandé j'ai l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SOAP Fault: (faultcode: HTTP, faultstring: Method Not Allowed)
Une idée?
Si vous avez des tuto sur l'utilisation de soap et ou la gestion des erreurs je suis également preneur.

Merci