原先在中文系统环境中调试成功发布到在英文系统下出现乱码
系统使用了编码过滤
编码过滤器CharEncodingFilter.java
权限过滤器AdminFilter.java
系统中使用的两个过滤器如上
之前的过滤顺序是:
在中文系统下编码没有论何问题
发布到英文系统下出现乱码
调整过滤顺序后
乱码问题解决,或者不调整过滤顺序
修改AdminFilter.java如下
乱码原因不明,
系统使用了编码过滤
编码过滤器CharEncodingFilter.java
if(encoding!=null&&!encoding.equals("")){
request.setCharacterEncoding(encoding);
}else{
request.setCharacterEncoding("utf-8");
}
chain.doFilter(request, response);
权限过滤器AdminFilter.java
HttpServletRequest httprequest=(HttpServletRequest)request;
HttpServletResponse httpresponse=(HttpServletResponse)response;
String url=httprequest.getRequestURI().toLowerCase();
String prefix=httprequest.getParameter("prefix");
String page=httprequest.getParameter("page");
chain.doFilter(request, response);
系统中使用的两个过滤器如上
之前的过滤顺序是:
<filter>
<filter-name>AdminFilter</filter-name>
<filter-class>com.common.filter.AdminFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>AdminFilter</filter-name>
<url-pattern>*.liao</url-pattern>
</filter-mapping>
<!-- 编码过滤 -->
<filter>
<filter-name>CharEncodingFilter</filter-name>
<filter-class>
com.common.filter.CharEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
在中文系统下编码没有论何问题
发布到英文系统下出现乱码
调整过滤顺序后
<!-- 编码过滤 -->
<filter>
<filter-name>CharEncodingFilter</filter-name>
<filter-class>
com.common.filter.CharEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>AdminFilter</filter-name>
<filter-class>com.common.filter.AdminFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>AdminFilter</filter-name>
<url-pattern>*.liao</url-pattern>
</filter-mapping>
乱码问题解决,或者不调整过滤顺序
修改AdminFilter.java如下
HttpServletRequest httprequest=(HttpServletRequest)request;
HttpServletResponse httpresponse=(HttpServletResponse)response;
httprequest.setCharacterEncoding("utf-8");//加入转码后乱码问题解决
String url=httprequest.getRequestURI().toLowerCase();
String prefix=httprequest.getParameter("prefix");
String page=httprequest.getParameter("page");
chain.doFilter(request, response);
乱码原因不明,