Tôi gặp sự cố với mã hóa UTF-8 của mình. Webapp của tôi sử dụng các từ tiếng Pháp được hiển thị chính xác trong jsp của tôi, nhưng không phải trong bộ điều khiển của tôi sau POST. Ví dụ, trong jsp của tôi, tôi có:Hình thức và bộ điều khiển mùa xuân UTF-8 mã hóa kém
Prénom de mon père
và khi tôi gửi hình thức, bộ điều khiển được:
Pra © nom de mon Pa re
Ký tựEncodingFilter là bộ lọc đầu tiên trong tệp như được mô tả trong this post
Đây là jsp của tôi:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!doctype html>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta http-equiv="content-language" content="fr">
...
</head>
<form:form class="form-horizontal" modelAttribute="AlimentationForm"
action="${actionUrl}" method="POST">
...
<form:input path="questions" class='input-xlarge' type='text' value='Prénom de mon père'/>
</form>
web.xml của tôi:
<filter>
<filter-name>characterEncodingFilter</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>characterEncodingFilter</filter-name>
<url-pattern>/web/*</url-pattern>
</filter-mapping>
Và tôi xin-config.xml
<beans:bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<beans:property name="basename">
<beans:value>classpath:messages</beans:value>
</beans:property>
<beans:property name="defaultEncoding" value="UTF-8" />
</beans:bean>
Tôi không biết có gì sai trong ứng dụng của tôi hoặc cấu hình của tôi, bạn có ý tưởng gì không?
Cảm ơn trước.
EDIT: Tôi đang sử dụng HDIV khuôn khổ
Điều gì về việc thêm "<% @ page language =" java "contentType =" text/html; charset = UTF-8 "pageEncoding =" UTF-8 "%>" trên jsp? – Hippoom
Xong, nhưng tôi không đề cập đến nó. Tôi đã chỉnh sửa bài đăng của mình – thibon