[nusoap] Response not of type text/xml: application/wsdl+xml
Résolu/Fermé
speedred
-
Modifié par speedred le 7/05/2013 à 14:14
Speedred Messages postés 24 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 19 mars 2014 - 16 mai 2013 à 14:05
Speedred Messages postés 24 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 19 mars 2014 - 16 mai 2013 à 14:05
A voir également:
- [nusoap] Response not of type text/xml: application/wsdl+xml
- Xml viewer - Télécharger - Édition & Programmation
- Clear type - Guide
- Office xml handler - Télécharger - Traitement de texte
- Cannot access offset of type string on string - Forum PHP
- No available networks no response from server iron tv pro - Forum TV & Vidéo
9 réponses
Speedred
Messages postés
24
Date d'inscription
mercredi 8 mai 2013
Statut
Membre
Dernière intervention
19 mars 2014
16
16 mai 2013 à 14:05
16 mai 2013 à 14:05
Problème résolu, cela venait juste du fait que le pc qui exécutai le code n'avait pas internet ...
Gigatrappeur
Messages postés
226
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
3 juillet 2014
25
7 mai 2013 à 15:04
7 mai 2013 à 15:04
Bonjour,
Tout d'abord merci de ta réponse rapide.
Je suis quasiment sur que l'erreur arrive lors de l'appel à la méthode call() car si je ne mais pas l'appel a cet méthode le message n'apparait pas. Si l'erreur venait du chargement du WSDL j'aurai une erreur après l'appel du constructeur non ?
Pour ce qui est de l'url, j'en suis sur car le fichier se trouve en local, ceux qui gère le web service ne m'ont pas fournie une url qui renvoie le fichier WSDL mais directement le fichier WSDL ainsi qu'un fichier XSD. Lorsqu'il n'arrive pas a trouver le fichier, j'obtiens un autre message d'erreur qui m'indique qu'il n'arrive pas a trouver le fichier demandé (enfin un message similaire ...) De tout manière qu'il soit en local ou en ligne ne changera pas le fonctionnement ?
Cordialement,
Speedred
Tout d'abord merci de ta réponse rapide.
Je suis quasiment sur que l'erreur arrive lors de l'appel à la méthode call() car si je ne mais pas l'appel a cet méthode le message n'apparait pas. Si l'erreur venait du chargement du WSDL j'aurai une erreur après l'appel du constructeur non ?
Pour ce qui est de l'url, j'en suis sur car le fichier se trouve en local, ceux qui gère le web service ne m'ont pas fournie une url qui renvoie le fichier WSDL mais directement le fichier WSDL ainsi qu'un fichier XSD. Lorsqu'il n'arrive pas a trouver le fichier, j'obtiens un autre message d'erreur qui m'indique qu'il n'arrive pas a trouver le fichier demandé (enfin un message similaire ...) De tout manière qu'il soit en local ou en ligne ne changera pas le fonctionnement ?
Cordialement,
Speedred
Gigatrappeur
Messages postés
226
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
3 juillet 2014
25
7 mai 2013 à 15:31
7 mai 2013 à 15:31
Hum...
Si le web service a été modifié et que tu n'a pas eu le WSDL correspondant, ça pose problème. Mais a priori, ce n'est pas le problème ici.
Moi, j'aurais fais un appel comme ceci :
En faite, ça dépend du web service. Il est écrit en Java ? C'est du axis 1 ou 2 ? A moins que ce soit du Javax ?
Vérifie ton niveau de log et passe-le au maximum (si possible).
Ta essayé sur soapUI, parce que l'impression que j'ai est que le web service te retourne autre chose que du xml.
Pour la doc saopclient, rien ne vaut php.net :
https://www.php.net/soapclient
Cordialement,
Gigatrappeur
Si le web service a été modifié et que tu n'a pas eu le WSDL correspondant, ça pose problème. Mais a priori, ce n'est pas le problème ici.
Moi, j'aurais fais un appel comme ceci :
$client->MdBSpieGetInformationPasseport('id', 'mdp');
En faite, ça dépend du web service. Il est écrit en Java ? C'est du axis 1 ou 2 ? A moins que ce soit du Javax ?
Vérifie ton niveau de log et passe-le au maximum (si possible).
Ta essayé sur soapUI, parce que l'impression que j'ai est que le web service te retourne autre chose que du xml.
Pour la doc saopclient, rien ne vaut php.net :
https://www.php.net/soapclient
Cordialement,
Gigatrappeur
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
je te remercie.
Pour ce qui ai du langage de programmation du web service, je n'en ai aucune idée :s . Comment je pourrais savoir avec quel langage il a été écrit ?
Je viens de tester l'écriture que tu me conseillé mais cela ne fonctionne pas, il me dit que ce n'est pas une méthode présente dans le classe soapclient().
Et j'ai aussi testé avec soapUI et lorsque de je rentre des informations, même fausses, il me renvoie bien un fichier xml que soapUI arrive a lire, et j'obtiens bien les massage d'erreur que normalement je devrai recevoir .
Donc grâce a toi je peut en conclure que l'erreur ne viens pas du serveur mais bien de moi ou de nusoap ... ( ce qui veut dire aussi que le fichier est correct.).
ps: je viens de m'apercevoir que le fichier qu'il me revoit c'est le fichier WSDL, c'est vraiment bizarre...
ps2: bon grâce a toi j'y vois un peut plus clair, en comparant soapui et ce que envois, je m'aperçoit qu'il y a des différences.
voici l'en-tete de la requete.
Je me rend compte qu'il n'y a pas de "SOAPACTION" et je trouve sa assez bizarre et je ne pense pas que ça soit normal.
Cordialement,
Speedred
Pour ce qui ai du langage de programmation du web service, je n'en ai aucune idée :s . Comment je pourrais savoir avec quel langage il a été écrit ?
Je viens de tester l'écriture que tu me conseillé mais cela ne fonctionne pas, il me dit que ce n'est pas une méthode présente dans le classe soapclient().
Et j'ai aussi testé avec soapUI et lorsque de je rentre des informations, même fausses, il me renvoie bien un fichier xml que soapUI arrive a lire, et j'obtiens bien les massage d'erreur que normalement je devrai recevoir .
Donc grâce a toi je peut en conclure que l'erreur ne viens pas du serveur mais bien de moi ou de nusoap ... ( ce qui veut dire aussi que le fichier est correct.).
ps: je viens de m'apercevoir que le fichier qu'il me revoit c'est le fichier WSDL, c'est vraiment bizarre...
ps2: bon grâce a toi j'y vois un peut plus clair, en comparant soapui et ce que envois, je m'aperçoit qu'il y a des différences.
voici l'en-tete de la requete.
POST /FMBV/soap/wsMdBSpie.wsdl HTTP/1.0 Host: 192.168.1.1:8080 User-Agent: NuSOAP/0.9.5 (1.123) Content-Type: text/xml; charset=utf-8 SOAPAction: "" Content-Length: 625
Je me rend compte qu'il n'y a pas de "SOAPACTION" et je trouve sa assez bizarre et je ne pense pas que ça soit normal.
Cordialement,
Speedred
Gigatrappeur
Messages postés
226
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
3 juillet 2014
25
7 mai 2013 à 16:16
7 mai 2013 à 16:16
En effet...
En faite, si j'étais toi, j'utiliserai pas nusoap. Moi, j'aurai utiliser directement l'objet soapclient.
Essaye ce code, peut-être cela t'aidera mieux comprendre le problème.
Pour ce qui est du langage du WS, faut demander avec le(s) personne(s) qui l'a(ont) écrit.
Peut-être quelqu'un d'autre a une idée pour nusoap ?
Cordialement,
Gigatrappeur
En faite, si j'étais toi, j'utiliserai pas nusoap. Moi, j'aurai utiliser directement l'objet soapclient.
Essaye ce code, peut-être cela t'aidera mieux comprendre le problème.
$url_wsdl = 'http://.../'; $options = array('soap_version'=>SOAP_1_1, 'exceptions'=>true, 'trace'=>1, 'cache_wsdl'=>WSDL_CACHE_NONE,'connection_timeout' => 25); $client = new soapclient($url_wsdl, options); echo '<pre>'; print_r($client ->__getFunctions()); // vérification des méthodes echo '</pre>'; $function = 'MdBSpieGetInformationPasseport'; $parametres = array('Identifiant' => 'id', 'MotDePasse' => 'mdp'); try { $client->$function($parametres); } catch (Exception $fault) { $string = "<b>Retour en erreur</b> :<br />"; $string .= "<b>ERROR:</b> ".$fault->faultcode."-".$fault->faultstring."."; $string .= "<br /><b>Trace : </b><br />"; $string .= 'Request : <br/><xmp>'; $string .= $client->__getLastRequest(); $string .= '</xmp>'; $string .= 'Reponse: <br/><xmp>'; $string .= $client->__getLastResponse(); $string .= '</xmp>'; echo $string; }
Pour ce qui est du langage du WS, faut demander avec le(s) personne(s) qui l'a(ont) écrit.
Peut-être quelqu'un d'autre a une idée pour nusoap ?
Cordialement,
Gigatrappeur
Je te remercie vraiment .
Je pense y voir un peut plus clair, mais malheureusement ce n'ait pas moi qui gère le serveur php et donc je suis obligé d'utilisé nusoap ...
J'ai finalement réussi a mettre le "SOAPAction" mais ça ne change toujours rien .
Je pense y voir un peut plus clair, mais malheureusement ce n'ait pas moi qui gère le serveur php et donc je suis obligé d'utilisé nusoap ...
J'ai finalement réussi a mettre le "SOAPAction" mais ça ne change toujours rien .
Gigatrappeur
Messages postés
226
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
3 juillet 2014
25
7 mai 2013 à 17:08
7 mai 2013 à 17:08
Ton web service est publique ? Je peux y accéder ?
Speedred
Messages postés
24
Date d'inscription
mercredi 8 mai 2013
Statut
Membre
Dernière intervention
19 mars 2014
16
10 mai 2013 à 09:16
10 mai 2013 à 09:16
désolé de répondre si tardivement.
On ne peut accéder au web-service qu'avec le fichier XSDL donc je te l'envoie par MP.
On ne peut accéder au web-service qu'avec le fichier XSDL donc je te l'envoie par MP.