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][SOAP] Erreur d'encodage ?


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre habitué Avatar de tintin72
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    663
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 663
    Points : 177
    Points
    177
    Par défaut [Web Service][SOAP] Erreur d'encodage ?
    Bonjour,

    J'ai une erreur d'encodage SOAP lors du passage d'une string via une fonction.
    SoapFault exception: [SOAP-ENV:Server] SOAP-ERROR: Encoding: string
    ça vient du ç contenu dans la chaine de caractère (lorsque je l'enlève tout remarche).
    l'entête de mon fichier wsdl est :
    <?xml version="1.1" encoding="UTF-8"?>
    Est ce que le pb vient de là ?

    Merci

  2. #2
    Membre averti Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Points : 378
    Points
    378
    Par défaut
    J'avais eu le même problème et depuis je passe toute les chaîne de SoapFault et de retour par utf8_encode.
    Such is the situation in our Fallen Galaxy

  3. #3
    Membre habitué Avatar de tintin72
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    663
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 663
    Points : 177
    Points
    177
    Par défaut
    cad ? Qu'est ce que je doit faire exactement pour corriger le pb ?

  4. #4
    Membre averti Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Points : 378
    Points
    378
    Par défaut
    C'est lors d'un return que ca arrive?

    Si c'est le cas, au lieu de faire

    tu fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return utf8_encode($retour);
    Such is the situation in our Fallen Galaxy

  5. #5
    Membre habitué Avatar de tintin72
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    663
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 663
    Points : 177
    Points
    177
    Par défaut
    oui, c'est lors d'un return.

    Effectivement en utilisant utf8_encode je n'ai plus
    d'erreur, par contre à la place du ç il m'affiche 2 caractères
    plutôt bizzare (un A avec un tilde au-dessus et un autre incompréhensible).
    Y aurait-il autre chose à modifier ?

  6. #6
    Membre habitué Avatar de tintin72
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    663
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 663
    Points : 177
    Points
    177
    Par défaut
    Ah oui d'accord... il faut utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    utf8_decode($retour);
    dans le fichier qui récupère la variable.
    c'est bon à savoir
    Par contre c'est un peu lourd de mettre uft8_encode et uft8_decode à
    chaque string...
    N'y a t-il pas une autre solution ?

  7. #7
    Membre averti Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Points : 378
    Points
    378
    Par défaut
    Si elle existe je ne la connaît pas en tout cas. Peut en regardant du côté de l'encodage du WSDL, des pages du WS...

    Enfin moi utf8_encode /decode ça me va bien
    Such is the situation in our Fallen Galaxy

  8. #8
    Membre habitué Avatar de tintin72
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    663
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 663
    Points : 177
    Points
    177
    Par défaut
    Il y a aussi la solution d'encoder les caractères accentués directement du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    &ccedil;a va &agrave; la maison ?
    J'ai vu qu'il y avait aussi la solution de sauvegarder les fichiers au format utf8 au lieu de latin1 (qui est la norme par défaut chez nous).
    Mais je n'ai pas trop approfondi. Si quelqu'un en sait plus qu'il n'hésite pas

Discussions similaires

  1. Web Service SOAP NullPointer erreur
    Par HairFoxOne dans le forum Services Web
    Réponses: 0
    Dernier message: 02/02/2016, 14h47
  2. Appels de Web services (SOAP) ?
    Par ovdbc dans le forum GWT et Vaadin
    Réponses: 1
    Dernier message: 17/10/2007, 11h28
  3. Déploiement web services SOAP sur Websphere 5.1
    Par g_rare dans le forum Websphere
    Réponses: 1
    Dernier message: 19/03/2007, 10h30
  4. web services, soap et compression.
    Par renaudjuif dans le forum Langage
    Réponses: 6
    Dernier message: 31/07/2006, 15h44
  5. [Web Service] [SOAP] Envoie requete
    Par _beber85 dans le forum JDBC
    Réponses: 1
    Dernier message: 08/06/2006, 09h31

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