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 :

JSP - AJAX encodage caractère accentués


Sujet :

Servlets/JSP Java

  1. #1
    Membre averti Avatar de hisy
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 377
    Points : 353
    Points
    353
    Par défaut JSP - AJAX encodage caractère accentués
    Bonjour,

    J'ai un page jsp qui appelle une autre page jsp en AJAX en lui passant un paramètre en GET.
    Mon soucis est que ce paramètre peut contenir des é par exemple et que quand je les récupères coté serveur j'ai des '?' à la place .

    J'ai essayé ce que j'ai pompé dans la FAQ a savoir dans ma jsp appelée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    String encoding = request.getCharacterEncoding();
     
    	if (encoding == null || !encoding.equals("UTF-8")) {
    		try {
    			request.setCharacterEncoding("UTF-8");
    		} catch (UnsupportedEncodingException e) {
    				System.err.println("HttpMultipartRequest - : " + e);
    			}
    	}
    Mais ca ne semble pas marcher, la chaine récupérée est déjà en UTF-8 apparement. J'ai aussi essayé de faire la meme chose avec ISO-8859-1 mais sans succes.

    Merci pour vos [élément de ] réponses ...
    Take it HiSy

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Comment as-tu codé l'appel ajax ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti Avatar de hisy
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 377
    Points : 353
    Points
    353
    Par défaut
    Merci de d'intéresser à mon problème,
    Voici mon appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    	/* Connect to the web service */
    	try {
    		xmlObject.open("GET", "<%= cdmContext.getApplicationURI() %>/actions/ajax/checkInitials.jsp?initial=" + initial + "&formName=document.TaskActForm&groupName=" + groupName +"&elementId=" + elementId +"&groupDN=" + groupDN+"&type="+type, true);
    	} catch (e) {
    		alert(" Error ... ");
    	}
    c'est la variable elementId qui me pose problème ...
    Take it HiSy

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Tu devrais encoder l'url, c'est TRES conseillé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    var url = "<%= cdmContext.getApplicationURI() %>/actions/ajax/checkInitials.jsp?initial=" + initial;
    url += "&formName=document.TaskActForm&groupName=" + groupName;
    url += "&elementId=" + elementId;
    url += "&groupDN=" + groupDN;
    url += "&type=" + type;
    
    try 
    {
        // encodeURI(string) ou escape(string) 
        xmlObject.open("GET", encodeURI(url), true);
    } 
    catch (e) 
    {
        alert(" Error ... ");
    }
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2010
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    J'ai un problème similaire qui malgré l'ajout de encodeURIComponent ne fonctionne toujours pas. Quand je veux récupérer ma requête coté Java les caractère spéciaux ( é,è,ç,ë etc.. ) sont illisible.

    Pour éviter ce genre de problème j'ai du faire ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    // je récupère l'encodage
    String encodage = request.getCharacterEncoding();
    String trame= new String();
     
    if (encodage!=null)
    {
    	trame = URLDecoder.decode(request.getParameter("trame"), "UTF-8");
    }
    else 
    {
    	trame = new String((request.getParameter("trame")).getBytes("8859_1"), "UTF-8");
    }
    Pour faire simple : "Encodage" est null quand je teste sous IE et à UTF-8 quand je suis sous Firefox.

    Ce code marche mais je ne le trouve pas très propre. Quelqu'un aurait il une explication ? ( ou une solution plus propre.. )
    Merci d'avance

Discussions similaires

  1. [Delphi for PHP] AJAX et caractères accentués
    Par GRAF dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 24/01/2009, 14h49
  2. Réponses: 4
    Dernier message: 29/02/2008, 11h11
  3. [MySQL] Encodage caractères accentués
    Par Jiraiya42 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/01/2008, 03h03
  4. [AJAX] JSP + AJAX + ENCODAGE
    Par imhotep_zr7s dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 21/12/2007, 16h10
  5. [JSP] cookies et caractères accentués
    Par muzik dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 05/10/2005, 12h13

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