原因是struts2.1.6这版本在获取并使用了请求参数后才调用HttpServletRequest的setCharacter方法进行编码设置,导致应用使用的就是乱码请求参数,这个bug在2.1.8已经解决
解决方法:
新建一个filter,把这个filter放置在struts2的filter之前,然后在doFilter()方法里面添加下面代码:
解决方法:
新建一个filter,把这个filter放置在struts2的filter之前,然后在doFilter()方法里面添加下面代码:
Public void doFiter(…){
HttpServletRequest req = (HttpServletRequest) request;
req.setCharacterEncoding(“UTF-8”);
filterchain.doFilter(request,response);
}
本文介绍了一个Struts2.1.6版本中存在的乱码问题及其解决方案。该问题出现在使用特定版本时,请求参数出现乱码,导致应用程序无法正确解析。文章提供了一个过滤器的实现方法,通过设置字符编码为UTF-8来解决这个问题。
728

被折叠的 条评论
为什么被折叠?



