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

Servlets/JSP Java Discussion :

problème encodage JSP -> serveur :/


Sujet :

Servlets/JSP Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 106
    Points : 70
    Points
    70
    Par défaut problème encodage JSP -> serveur :/
    Bonjour à tous !

    J'ai un éternel petit souci d'encodage, je fais donc appel à vos services

    Lorsque je met un € dans un textarea de ma jsp (avec charset UTF8), je récupère sur mon serveur un ensemble de drôle de caractères : "⿬".

    Si vous avez des idées du pourquoi du comment, n'hésitez pas!

    Merci!

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par -=mateo=- Voir le message
    Bonjour à tous !

    J'ai un éternel petit souci d'encodage, je fais donc appel à vos services

    Lorsque je met un € dans un textarea de ma jsp (avec charset UTF8), je récupère sur mon serveur un ensemble de drôle de caractères : "⿬".

    Si vous avez des idées du pourquoi du comment, n'hésitez pas!

    Merci!
    A quel endroit tu récupère des caractères obscond? En affichant un deuxième page au client? En l'affichant dans la console texte? En le stockant dans un base de donnée? As-tu bien définite les acceptCharset sur le form? Est-il cohérent avec le charset utilisé par request.setCharacterEncoding()? Le charset utilisé par System.out est-il cohérent avec ce qu'attends ta console? Le charset utilisé pour stocké en DB supporte-t-il l'euro? As-tu des problème avec é è à ?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 106
    Points : 70
    Points
    70
    Par défaut
    Alors en fait je récupère ces caractères sur les champs côté serveur (mode Debug), qui les stocke ensuite en BD où les € apparraissent comme des points d'interrogation inversés. En allant ensuite sur une autre page qui doit récupérer ces champs depuis la BD, j'obtiens les "?" inversés à l'affichage. Cependant, je viens de m'apercevoir que pour d'autres pages où je fais le même système : symbole € dans un champs du formulaire, stockage en BD, puis récupération via une autre page jsp, le symbole "€" n'apparait pas correctement ni sur le serveur ni en BD, mais est tout de même bien restitué dans la jsp.

    Je n'ai pas checké les acceptCharset des forms. Je vais voir ça.

    Merci pour ta rapidité

  4. #4
    Membre éclairé Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 672
    Points
    672
    Par défaut
    Bonjour,

    voici un article qui n'est pas exhaustif sur tous les endroits où on doit assurer l'encodage mais il peut peut être t'aider.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 106
    Points : 70
    Points
    70
    Par défaut
    ok merci je vais voir ça...

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    tu dois vérifier à tous les points que c'est correct. Vérifie aussi que ta db supporte le symbole €. Elle doit au moins etre iso-8859-15, le is-8859-1 n'ayant pas le support €. Vérifie son connecteur. A tout moment, pour vérifier si le code est bien recu, le plus sûr comme test est d'afficher la sortie de chaine.toByte("UTF-8"), et de comparer avec les tables UTF-8 si c'est correct Car l'afficher à l'écran tu courrera toujour le risque que c'est l'affichage à l'écran qui déconne mais que tu l'a bien lu, ou l'inverse....

  7. #7
    Membre confirmé
    Avatar de link256
    Profil pro
    Développeur Java
    Inscrit en
    Février 2003
    Messages
    596
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2003
    Messages : 596
    Points : 642
    Points
    642
    Par défaut
    le symbole € fait partie de l'UTF-16 il me semble

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    l'utf-8, comme l'utf-16 et l'utf-32 supportent tout le range unicode, dont € fait aussi partie. L'iso-8859-15 est un iso-8859-1 modifié pour inclure le symbole €

  9. #9
    Membre confirmé
    Avatar de link256
    Profil pro
    Développeur Java
    Inscrit en
    Février 2003
    Messages
    596
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2003
    Messages : 596
    Points : 642
    Points
    642
    Par défaut
    oki

Discussions similaires

  1. Problème encodage Eclipse serveur Tomcat
    Par thomas9501 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 07/12/2010, 23h45
  2. Problème encodage JSP "include"
    Par thomas9501 dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 01/12/2010, 09h57
  3. Problème d'encodage JSP/Servlet/MySQL
    Par AlexLEDE dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 28/05/2009, 15h13
  4. Problème d'encodage JSP
    Par dedeloux dans le forum Servlets/JSP
    Réponses: 20
    Dernier message: 09/04/2008, 15h31
  5. Problème d'encodage sur différents serveurs
    Par JEDI_BC dans le forum Langage
    Réponses: 3
    Dernier message: 29/06/2007, 15h47

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