Salut,
J'ai développé une application web (apache-tomcat+eclipse+mysql) et tout va bien pour les caractères spéciaux (affichage+lecture+enregistrement dans la base) sur windows XP.
Lorsque j'ai installé un apache-tomcat sur un serveur Linux, j'ai rencontré un problème avec ces caractères; l'affichage marche très bien mais si je veus enregistrer une donnée qui contient un ou plusieurs caractères spéciaux dans la base et la reafficher, des caractère bizarre sont affichés.
J'ai effectué les tests suivants:
1- si j'enregistre des données contenant des caractères spéciaux manuellement dans la base; elles sont bien affichées sans problèmes; donc mysql n'a rien à voir avec ce problème.
2- J'ai testé avec le mot "évènement" dans ma page jsp, j'ai affiché ce mot dans la servlet qui enregistre dans la base et j'ai obtenu le mot suivant : "évènement" et par conséquent il est enregistré comme ça dans la base.
Donc le problème provient de la lecture des données à partir des pages jsp dans la servlet.
j'ai affiché dans la servlet le request.getCharacterEncoding=UTF-8 et toutes mes pages sont codées en UTF-8 en ajoutant :
dans chaque page.<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
quelqu'un a une idée sur ce sujet?
Merci et je suis prêt si vous avez des questions
Partager