IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[Web Service] SoapClient: Parsing WSDL ERROR


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 108
    Par défaut [Web Service] SoapClient: Parsing WSDL ERROR
    Bonjour,

    Je débute en PHP, j'essaye d'utiliser des web services fournis par une plateforme.
    Voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $serverpath="https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager";
    $client = new SoapClient($serverpath);
    code erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager' : failed to load external entity
    "https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager" in C:\wamp\www\test-php\formulaire.php:6 Stack trace: #0 C:\wamp\www\test-php\formulaire.php(6):
     SoapClient->SoapClient('https://ww2.pra...') #1 {main} thrown in C:\wamp\www\test-php\formulaire.php on line 6
    J'ai pourtant activer "extension=php_soap.dll" dans le fichier php.ini
    Merci pour votre aide.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    772
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2004
    Messages : 772
    Par défaut
    Bonjour,

    L'URL que tu indiques pointes vers le webservice lui-même, pas la wsdl.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $serverpath="https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager?wsdl";
    $client = new SoapClient($serverpath);

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 108
    Par défaut
    Citation Envoyé par pc.bertineau Voir le message
    Bonjour,

    L'URL que tu indiques pointes vers le webservice lui-même, pas la wsdl.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $serverpath="https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager?wsdl";
    $client = new SoapClient($serverpath);
    le problème persiste même lorsque j'ai essayé avec le WSDL.
    voici le code d'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: 
    Couldn't load from 'https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager?WSDL' : failed to load external entity "https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager?WSDL" in C:\wamp\www\test-php\formulaire.php:65 
    Stack trace: #0 C:\wamp\www\test-php\formulaire.php(65): SoapClient->SoapClient('https://ww2.pra...') 
    #1 {main} thrown in C:\wamp\www\test-php\formulaire.php on line 65

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    772
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2004
    Messages : 772
    Par défaut
    Change "?WSDL" pour "?wsdl"

    Si ça avait été codé avec un peu plus de souplesse ça aurait dû être accepté en majuscules mais la minuscule reste la norme dans les URI...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 108
    Par défaut
    Citation Envoyé par pc.bertineau Voir le message
    Change "?WSDL" pour "?wsdl"

    Si ça avait été codé avec un peu plus de souplesse ça aurait dû être accepté en majuscules mais la minuscule reste la norme dans les URI...
    j'ai essayé avec "?WSDL", toujours rien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $serverpath="https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager?WSDL";
    $client = new SoapClient($serverpath);
    erreur:
    Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL:
    Couldn't load from 'https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager?WSDL' : failed to load external entity "https://ww2.praxedo.com/eTech/services/2006_09_25/BusinessEventManager?WSDL" in C:\wamp\www\test-php\formulaire.php:65
    Stack trace: #0 C:\wamp\www\test-php\formulaire.php(65): SoapClient->SoapClient('https://ww2.pra...')
    #1 {main} thrown in C:\wamp\www\test-php\formulaire.php on line 65
    C'est bizarre, parce que j'arrive à ouvrir le fichier XML: https://ww2.praxedo.com/eTech/servic...ntManager?WSDL

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    772
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2004
    Messages : 772
    Par défaut
    Change "?WSDL" pour "?wsdl"
    C'est en minuscule qu'il faut le mettre !

    edit: ok j'avais pas vu que ça marchait aussi avec les majuscules

    Si ça ne marche toujours pas, c'est que tu dois être derrière un proxy. Dans ce cas tu dois utiliser les paramètres optionnels :

    Citation Envoyé par php.net
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $client = new SoapClient("some.wsdl", array('proxy_host'     => "localhost",
                                                'proxy_port'     => 8080));
    $client = new SoapClient("some.wsdl", array('proxy_host'     => "localhost",
                                                'proxy_port'     => 8080,
                                                'proxy_login'    => "some_name",
                                                'proxy_password' => "some_password"));

Discussions similaires

  1. Web Service HTTPRIO et WSDL
    Par Fbartolo dans le forum C++Builder
    Réponses: 3
    Dernier message: 22/01/2010, 13h13
  2. [Web Service][SOAP] complextype : SOAP-ERROR: Encoding: Violation of encoding
    Par maximep dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 02/04/2009, 11h32
  3. [Web Service][nuSOAP] génération wsdl avec php et les types
    Par ybvj59930 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 06/02/2009, 16h03
  4. [Web Service] Générer fichier wsdl
    Par fayred dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 04/08/2008, 16h58
  5. [Web Service][SOAP] génération WSDl à la volée par PHP
    Par kaboume dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 09/11/2007, 12h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo