读书人

过滤器设置编码无效依然乱码解决办法

发布时间: 2012-02-16 21:30:36 作者: rapoo

过滤器设置编码无效,依然乱码
郁闷了。

必须在设置request编码方式后加一句request.getParameter才能生效

过滤器代码片断:
protected void doFilterInternal(
HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {

if (this.forceEncoding || request.getCharacterEncoding() == null) {

request.setCharacterEncoding(this.encoding);
request.getParameter( "mm ");//加上这句话就一切正常了,否则乱码
}
filterChain.doFilter(request, response);
}
-------------------------------------------
web.xml

<filter>
<filter-name> encodingFilter </filter-name>
<filter-class> cn.edu.njtu.mofan.common.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> encodingFilter </filter-name>
<url-pattern> *.page </url-pattern>
</filter-mapping>


请教,有没有人遇到过相似的情况。另外可能的原因是什么。谢谢

[解决办法]
过滤器偶也是刚刚开始学~一起学习~
[解决办法]
注一下

读书人网 >Java Web开发

热点推荐