Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Services Web
Services Web Forum d'entraide pour les services Web en PHP, qui permettent de créer et de consommer facilement des webservices (génération de WSDL etc.). Exemples : SOAP, NuSOAP, REST, SCA-SDO... Avant de poster -> Cours webservices
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/04/2007, 23h09   #1
Nouveau Membre du Club
 
Développeur Web
Inscription : août 2005
Messages : 50
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2005
Messages : 50
Points : 28
Points : 28
Envoyer un message via MSN à lehic Envoyer un message via Skype™ à lehic
Par défaut [SOAP] Erreur avec php5 et soap

Bonjour, j'ai écris un client soap qui interroge un Service Web sur HTTPS écrit en JAVA, dans le service web en question, je sollicite une méthode "Test()" qui me renvois un simple string ("Résultat"), le code client est le suivant :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
<?php
 
// première étape : désactiver le cache lors de la phase de test
ini_set("soap.wsdl_cache_enabled", "0");
 
// lier le client au fichier WSDL
$clientSOAP = new SoapClient('http://localhost/services/soap/GateService?WSDL',array('login' => "manager",'password' => "manager"));
 
// executer la methode getHello
echo$clientSOAP->Test();
 
 
 
?>
Un message de type :
"
Citation:
Catchable fatal error: Object of class stdClass could not be converted to string in C:\Program Files\xampp\htdocs\webservice\client.Gate.php on line 10
"
La version de php que j'utilise est la 5.2.1, je crois qu'il y a un rapport avec la version de php, mais je ne suis pas sur.
Si quelqu’un a une idée, merci de me la donner
lehic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 16h33   #2
Nouveau Membre du Club
 
Développeur Web
Inscription : août 2005
Messages : 50
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2005
Messages : 50
Points : 28
Points : 28
Envoyer un message via MSN à lehic Envoyer un message via Skype™ à lehic
Problème réglé, voila la bonne syntaxe :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<?php
 
// première étape : désactiver le cache lors de la phase de test
ini_set("soap.wsdl_cache_enabled", "0");
 
/*$client = new SoapClient("some.wsdl", array('login'          => "some_name",
                                            'password'       => "some_password"));*/
// lier le client au fichier WSDL
$clientSOAP = new SoapClient('http://localhost/services/soap/GateService?WSDL',array('login' => "manager",'password' => "manager"));
 
// executer la methode Test
 
$response = $clientSOAP->Test();
print($response->out);
?>
lehic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2008, 19h25   #3
Invité régulier
 
Inscription : mai 2008
Messages : 38
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 38
Points : 5
Points : 5
Salut,
L'erreur que tu avais, tu sais d'ou elle provenait?
Noizet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2008, 19h58   #4
Nouveau Membre du Club
 
Développeur Web
Inscription : août 2005
Messages : 50
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2005
Messages : 50
Points : 28
Points : 28
Envoyer un message via MSN à lehic Envoyer un message via Skype™ à lehic
LA Méthode Test() ne renvois pas un string, elle renvois un objet, donc impossible de l'afficher avec un echo, il faut l'affecter dans une variable :
$MonObjet=$clientSOAP->Test();

en suite pour afficher la structure de ton objet, utilise print_r() :
print_r($MonObjet)

cette fonction affichera la structure de ton objet, et de cette façon tu sera qu'elles sont les propriétés de ton objet et leurs type.

dans mon cas mon objet, avait la propriété out de type string, donc pour afficher ma valeur, il faut faire echo $MonObjet->out;

voila.
lehic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2008, 19h59   #5
Invité régulier
 
Inscription : mai 2008
Messages : 38
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 38
Points : 5
Points : 5
Ok, merci beaucoup!
Noizet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 17h23   #6
Invité de passage
 
Homme Kev
Développeur Web
Inscription : août 2011
Messages : 1
Détails du profil
Informations personnelles :
Nom : Homme Kev
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : août 2011
Messages : 1
Points : 1
Points : 1
Franchement tes trop BON mec ! 4h de recherche ! MERCI ! Bonne continuation !
dom_kevinski est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h43.


 
 
 
 
Partenaires

Hébergement Web