[SOAP] [WSDL] [PHP] Problème création du fichier WSDL (Débutant)
Bonjour à tous !
Donc voila j'ai un petit soucis comme l'indique le titre.
J'ai tout d'abord créée un fichier serveur et client, en faisant passer une simple addition de 2 nombres, avec un serveur Soap, et donc un client grâce à cette déclaration :
Code:
1 2 3
| $client = new SoapClient (null, array(
'uri' => 'http://localhost/webservice.php',
'location' => 'http://localhost/webservice.php')); |
Tout marchait bien. Donc j'ai voulu ensuite utiliser un fichier WSDL. La tout s'est compliqué, après plusieurs recherches, j'ai pu pondre un truc qui ressemblait à quelque chose mais qui ne fonctionne pas.
Il y a beaucoup de choses que je n'ai pas comprises, que j'ai simplement recopier, je doute de leur utilité dans mon
cas très simple.
Voici déjà le début du fichier WSDL :
Code:
1 2 3 4 5 6 7 8 9 10
| <definitions
name="webservice"
targetNamespace="http://localhost/Test_O1/webservice.php"
xmlns:tns="http://localhost/Test_O1/webservice.php"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:s="http://www.w3.org/2001/XMLSchema"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"> |
Je pense que l'erreur vient de là, je ne vous inflige pas le blabla qui suit dans le fichier.
Et donc voici l'erreur que ca m'affiche :
Code:
1 2 3 4 5
| Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL:
Couldn't load from 'C:\Program Files\www\Test_01\webservice.wsdl' in
C:\Program Files\www\Test_01\client.php:18 Stack trace: #0
C:\Program Files\www\Test_01\client.php(18): SoapClient->SoapClient('webservice.wsdl') #1 {main}
thrown in C:\Program Files\www\Test_01\client.php on line 18 |
Alors que j'ai simplement modifié ces 2 lignes dans mes fichiers webservice.php (serveur) et client.php :
Code:
1 2 3
| $client = new SoapClient (null, array(
'uri' => 'http://localhost/webservice.php',
'location' => 'http://localhost/webservice.php')); |
est devenue :
Code:
$client = new SoapClient ("webservice.wsdl");
Code:
$server = new SoapServer(null, array('uri' => 'http://localhost/webservice.php'));
est devenue :
Code:
$server = new SoapServer("webservice.wsdl");
Donc comme je comprends le message d'erreur, il n'arrive pas à charger le fichier WSDL. Mais pourquoi donc ?
Merci de votre aide par avance :D