我在JSP页面上遇到编码问题。我在我的项目中使用Spring框架和Maven。
我在
中设置了编码的Maven
<properties>
<spring.version>3.0.2.RELEASE</spring.version>
<cxf.version>2.7.5</cxf.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
弹簧
<filter>
<filter-name>charsetEncodingFilter</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>charsetEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
JSP(通过html元)
<meta http-equiv='content-type' content='text/html;charset=utf-8' />
我从服务器及其编码中跟踪了返回的文档。这是对的 - UTF-8。
在JSP页面上有:
ščťžýáíé
但我只对静态文本有疑问,它会显示ľšÄťžýáÃé
等文本。
解决这个问题的任何想法?
答案 0 :(得分:5)
显然,将.jsp转换为.java的JSP编译器(在您的Java EE服务器中)假定(UTF-8)文本是另一种编码,因此是那些序列。使用:
<%@ page pageEncoding="UTF-8" %>