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

来源:互联网 发布:c007电话软件下载 编辑:程序博客网 时间:2024/05/20 13:40
今天碰到一乱码问题,怎么解决都不给力最后解决办法是设置了表单的提交方式,将method设置为post,解决问题。虽然默认的提交方式是post。但是如果不显示设置的话,就会出现我所出现的问题。
总结下处理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框架中。


0 0