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

Format d'échange (XML, JSON...) Java Discussion :

Encodage d'une string XML


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut Encodage d'une string XML
    Bonjour,

    Je rencontre un problème d'encodage de caractère. Effectivement, j'envoie (à partir d'une page index.html) par le biais d'une requête ajax en mode POST à une page .jsp, une variable xml sous la forme d'un texte qui ressemble à ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var str_xml = "<pdt><salle id='1'><personne nom='fabien sétard'></personne></salle></pdt>"
    (je veux préciser ici que je n'ajoute pas d'entête xml de type <?xml version="1.0"?>, je trouve cela inutile mais peut-être que là est mon erreur??)

    Ensuite, cette même page .jsp appelle des classes java qui convertissent cette variable en document XML, puis lui fait divers traitement (ajout de personnes) et à la fin, la reconvertit en variable texte puis la retransmet.

    Le problème est que quand je la réceptionne, ça m'affiche quelque chose de la sorte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "<pdt><salle id='1'><personne nom='fabien sÃ?Æ?Ã?©tard'></personne></salle></pdt>"
    Pour info (je ne sais pas si c'est utile), j'ai mis ceci en entête dans ma .jsp:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@ page contentType="text/html; charset=iso-8859-1" language="java" %>
    Pouvez-vous m'aider à résoudre ce problème?

    Merci d'avance.

    PS: Précision, j'utilise la bibliothèque XOM, je convertit mon document xml en faisant appel à la fonction/méthode toXml()

  2. #2
    Membre éprouvé
    Avatar de LinkinSelim
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Mars 2006
    Messages
    365
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Mars 2006
    Messages : 365
    Points : 1 034
    Points
    1 034
    Par défaut
    je veux préciser ici que je n'ajoute pas d'entête xml de type <?xml version="1.0"?>
    Essai d'ajouter cette entete a ton xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?xml version="1.0" encoding="UTF-8"?>

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 554
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 554
    Points : 21 615
    Points
    21 615
    Par défaut
    Moi je vais conseiller le contraire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?xml version="1.0" encoding="windows-1252"?>
    Je ne sais pas si c'est mieux, mais UTF-8 est censé être implicite quand on ne déclare rien, justement. Par conséquent, pour changer quelque chose, je suggère de déclarer autre chose.

    Là, nous avons l'effet de nombreuses conversions ratées entre utf-8 et windows-1252, alors ça vaut la peine d'essayer. Mais je me demande avec quelle méthode la String est transformée en XML, et si le fichier de la jsp est lui-même en iso-8859-1 ou pas.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    Merci de vos reponses,

    En fait je crois justement que c'était parce que, avant de retransmettre la string xml et bien dans java je lui enlevais son entete...
    Donc la ce que j'ai fais c'est que j'ai laissé son entete et je ne lui enlève qu'une fois la string reçu et la , ça marche!!

    Merci à vous en tout cas.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    Aie aie, je viens de tester encore et je me rends compte que sous Firefox ça marche, mais c'est lorsque j'utilise IE que la ça plante.

    En fait, l'erreur semble s'être assagit et le caractère "é" est remplacé par "é"... Vous avez une idée?

    (en fait, je viens de comprendre que le 1er resultat etait issus d'encodage sur encodage..)

  6. #6
    Membre émérite
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Points : 2 371
    Points
    2 371
    Par défaut
    Bonjour,

    il suffit que tu paramètre ton navigateur avec le bon encodage, à savoir UTF-8, sinon il t'affiche "n'importe quoi".
    Article : Installation de Cocoon
    Je ne réponds pas aux MP à caractère technique.

Discussions similaires

  1. [Encoding] Détection encodage d'une String
    Par kij dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 22/12/2010, 23h24
  2. Récupérer un seul élément d'une string XML
    Par kaygee dans le forum ASP.NET
    Réponses: 5
    Dernier message: 28/04/2009, 20h28
  3. parser une string xml avec jsp
    Par issamos4 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 26/03/2007, 09h50
  4. encodage d'une string en XML
    Par maxvador dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 24/08/2006, 17h57
  5. [XML] [string] parser une string XML
    Par fxp17 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 29/03/2006, 10h27

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