我正在使用Spring 3.0.3 + sitemesh + JSP,我遇到了结果页编码的麻烦。
我使用Spring的CharacterEncodingFilter来编码响应并使用UTF-8请求,我在JSTLViewResolver中声明了适当的contentType。我还以UTF-8格式保存了我的jsp和标签。
我真正想要避免的是使用pageEncoding来说明每个jsp和tag文件指令
<%@ tag pageEncoding='UTF' %>
有没有办法避免这种情况?
由于
答案 0 :(得分:0)
简短的回答,没有。对于jsps,您可以将页面声明放在一个文件中,比如includes.inc,然后在所有jsps中包含该文件:
<%@ include file="includes.inc"%>
理论上应该有效,并且它适用于你放在那里的其他东西,但似乎如果在包含的文件中指定charset,Tomcat就不会得到它(默认为ISO-8859-1)。如果此技术适用于您的特定服务器安装,请使用它。
答案 1 :(得分:0)
在我的web.xml中声明:
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<page-encoding>UTF-8</page-encoding>
</jsp-property-group>
</jsp-config>
它似乎对我有用,但对于.tag它没有用:(
答案 2 :(得分:0)
使用<%@tag pageEncoding="UTF-8" %>
在标记文件的顶部