SSH整合和struts2表单提交乱码问题解决办法

总结下处理struts2乱码的几个方法:
1.在struts.xml中添加<constant name=”struts.i18n.encoding” value=”UTF-8″/>
2.在jsp页面中添加<%@ page language=”java” contentType=”text/html; charset=utf-8″ pageEncoding=”utf-8″%>
<meta http-equiv=”content-type” content=”text/html; charset=utf-8″ />
3.通过filter方式解决。
<filter>
<filter-name>SetCharacterEncoding</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>
</filter>
<filter-mapping>
<filter-name>SetCharacterEncoding</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>SetCharacterEncoding</filter-name>
<url-pattern>*.action</url-pattern>

</filter-mapping>

转自:http://www.2cto.com/kf/201109/103418.html

本人遇到的问题是:如果单一的使用struct2的话自己写的编码过滤器可以生效。但是在ssh整合框架中没有生效。后面使用spring的编码过滤器即可以解决。

即配置:org.springframework.web.filter.CharacterEncodingFilter,如果自己写了CharacterEncodingFilter还没有解决乱码的话,试一下spring的CharacterEncodingFilter,特别是在ssh框架中。