Problème accès webservice SOAP

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème accès webservice SOAP

Re: Problème accès webservice SOAP

par Giova » 22 juin 2012, 21:33

Salut,

Je viens d'avoir le même problème que j'ai résolu.
Mon client : un serveur unix

La cause du problème : pour mon service, j'avais choisi un mauvais binding : net.tcp
php ne supportait pas ce mode de transport.
J'ai donc basculé sur du basicHttpBinding, et là ça passe.

Re: Problème accès webservice SOAP

par regis67 » 20 févr. 2012, 10:57

C'est bien en SOAP 1.2 j'avais déjà testé en lui mettant dans le constructeur la version mais ça ne fonctionne pas mieux.

J'ai essayé avec un webservice gratuit getWhois et ça fonctionne :

$client = new SoapClient("http://www.webservicex.net/whois.asmx?WSDL");

$resultat = $client->getWhoIs(array("HostName" => "www.google.fr"));

Le problème est peut être lié au fait que l'url est en HTTPS (sans authentification).

Je n'ai pas bien compris la réponse avec la class SoapServer car je n'ai pas la main sur le serveur y-a'il quelque chose à faire sur le client avec cette classe ?

Re: Problème accès webservice SOAP

par xTG » 17 févr. 2012, 15:54

C'est quelle version de SOAP ?
Car de base il utilise la version 1.1 donc si ton webservice est en 1.2 il faut lui dire dans le constructeur.

exemple DOC :
$client = new SoapClient("some.wsdl", array('soap_version'   => SOAP_1_2));

Re: Problème accès webservice SOAP

par Thibaud C » 17 févr. 2012, 15:24

Tu as essayé avec la class SoapServer ?

Problème accès webservice SOAP

par regis67 » 17 févr. 2012, 14:12

Bonjour,

J'accède actuellement à ce webservice à l'aide de Nusoap qui fonctionne bien :

$client = new nusoap_client("https://soap.business.tomtom.com/v1.8/m ... rvice?wsdl");

Je souhaite désormais y accéder à l'aide des fonctions Soap intégrées à PHP (pour des problèmes de compatibilité de nusoap avec certaines versions) :

$client = new SoapClient("https://soap.business.tomtom.com/v1.8/m ... rvice?wsdl");

Dans ce cas j'obtiens systématiquement l'erreur suivante :

SOAP-ERROR: Parsing WSDL: Could not find any usable binding services in WSDL

J'ai tenté plusieurs déclarations proposées sur la doc de cette fonction

exemple : ($client = new SoapClient("some.wsdl", array('login' => "some_name",
'password' => "some_password"));

Mais le problème subsiste, auriez vous une idée ? Merci d'avance !