Bonjour,
J'ai un sérieux problème d'encodage et j'ai beau épluché le Web depuis une semaine, je ne trouve pas de solution. J'ai un serveur JBoss et un serveur MySQL 5.0 reliés par un J/Connector.
Le serveur MySQL, la base de données, les tables et les données sont encodés en UTF-8.
J'ai mis dans les fichiers JSP la balise :
Et entre <head>...</head> :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" %>
J'ai vérifié dans le navigateur et il est bien indiqué que les pages sont encodées en UTF-8.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Dans web.xml, j'ai ajouté :
Mais il y a une erreur au lancement de JBoss :
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
17
18
19
20 <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <filter> <filter-name>Spring character encoding filter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>Spring character encoding filter</filter-name> <url-pattern>/contact/*</url-pattern> </filter-mapping>
ERROR [[/DataConf]] Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
En fait, les caractères UTF-8 directement écrits dans les JSP s'affichent correctement. De même pour ceux récupérés dans la base de données. Par contre, ceux enregistrés dans la base de données depuis une JSP sont mal encodés (dans la base de données elle-même, les accents s'affichent mal).
Edit : l'application Web n'est pas de moi, je vous serai donc reconnaissant d'envisager toutes les possibilités et de les détailler. Merci !
Partager