Bonjour,
dans le cadre d'une reprise d'existant, je suis confronté à des problèmes d'encoding de caractères...
Mon contexte:
- Dans une JSP, j'ai un formulaire de recherche avec un champ mot-clé
- Lorsque l'utilisateur clique sur "rechercher", il y a un form.submit
- Lorsque la page se rafraichi, le formulaire doit ré afficher les critères de l'utilisateur, dont le mot-clé
Mon problème:
- Si le mot-clé saisi contient un accent, la chaine ré affichée ne correspond pas à la saisie: "é" devient "é"
Mon analyse:
- Il semble que le moteur de traitement de la recherche effectue une transformation sur la chaine de recherche
- Je pense que cette chaine est URLEncodée
Ce que j'ai du mal a comprendre, c'est que :
Dans ma JSP, je fais de jolis(!!) System.out.println qui me donnent les résultats suivants:
...qui me semblent plutôt bizarre, donc je me fais une petite classe java dans Eclipse qui fait la même chose et le résultat est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 java.net.URLDecoder.decode(%C3%A9, UTF-8)= é java.net.URLDecoder.decode(%E9, ISO-8859-1)= é
...qui me semble bien plus raisonnable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 java.net.URLDecoder.decode(%C3%A9, UTF-8)= é java.net.URLDecoder.decode(%E9, ISO-8859-1)= é
J'ai donc l'impression d'avoir plusieurs problèmes à résoudre, mais ce dernier point de decoding de caractères, là, je ne comprends vraiment pas... Quelqu'un saurait-il m'éclairer ?
Olivier
Partager