`
jinbx1983
  • 浏览: 7538 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
最近访客 更多访客>>
社区版块
存档分类
最新评论

struts2乱码解决方案

阅读更多
    在使用struts2时,总会碰到乱码的问题,最根本的原因在于它是用过滤器来实现转发Action的,既然是过滤器,那么它就会有一条执行链。关键在于,在这条链里,乱码是在哪产生的。因此解决乱码问题主要集中在这条链里,之所以在Action里看到了乱码,是因为在这之前已经是乱码了,因此需要将文字在进入Action前进行编码。原则上说,如下方案一般能解决编码问题:
1.统一所有页面的编码:都为UTF-8.
2.在struts.xml里将i18n设置为UTF-8.
    但是,如果我们有了自己的过滤器应该怎么处理?
    自己写的过滤器应该放到Struts2过滤器的前面,这是官方文档说的,但如果放在前面,如果在自己写的过滤器里没有在request过来的内容进行编码,则传到Action过滤器里又是乱码了(虽然页面统一编码为UTF-8)。因此struts2.xml中的编码配置会失效。当然解决方法也可以在自己的filter里重新编码,但这又比较麻烦,因此还要使用spring给的编码filter:CharacterEncodingFilter.方法就是在所有过滤器之前使用。因此在web.xml中的配置顺序如下:
    1.OpenSessionInViewFilter
    2.ActionContextCleanUp
    3.CharacterEncodingFilter
    4.自己写的和其它的filter.
    5.FilterDispatcher
    除了上述配置之外,可以去掉struts.xml中的编码配置,并将所有页面统一编码就能解决乱码问题了。
分享到:
评论
1 楼 五月天 2010-06-07  
为什么filter放在struts2前面时会导致struts2.xml中的编码配置会失效?
谢谢!

相关推荐

    Struts中文乱码解决方案

    Struts中文乱码解决方案

    struts,ajax乱码解决方案

    struts,ajax乱码解决方案

    Struts2中文乱码问题最终解决方案

    关于StrutsPrepareAndExecuteFilter最新的过滤器,在Struts.xml定义常量<constant name="struts.i18n.encoding" value="UTF-8"/>...关于Struts2各个版本、各种过滤器,用get方式提交都方法都无法解决的中文乱码问题。

    Struts实现文件下载中文乱码解决方案

    Struts实现文件下载中文乱码解决方案收藏

    Struts1.2乱码和过滤器的使用

    乱码解决方案和过滤器的解决与用户的登陆error解决 乱码解决方案和过滤器的解决与用户的登陆error解决

    java中文乱码解决方案

    struts2中文乱码解决方法 1. 在struts2里面,最好将所有字符都设成utf-8。 ; charset=UTF-8"%> <%@ page pageEncoding="UTF-8" %>1.1 在jsp页面设定字符编码。这边有必有说明的是如果是jsp+java bean+servlet的...

    struts解决乱码问题

    该软件是在tomcat下解决乱码问题的解决方案。很详细的例子

    sshz中文乱码解决方法

    struts2中文乱码解决方案 1.在struts.xml文件中加入一个常量配置: <struts> <constant name="struts.i18n.encoding" value="GBK"/> </struts> 2.在web.xml文件中struts的filter之前加入 <filter> ...

    url传值到Action乱码解决方案

    解决:delete.action?title=()%>传到action类出现乱码的问题

    struts2下载

    struts2下载,下载文件名中文乱码解决方案

    DWSurvey 调查问卷系统

    解决方案:降低struts版本,由struts2.5降至struts2.2.1 2、源项目退出操作无响应 原因:源项目中集成shiro后只处理了登录未处理退出 解决方案:添加退出操作处理 3、解决源项目手机端无法访问问题 4、解决源项目...

    配置连接池 Tomcat开启Windows服务

    服务器等软件的配制 Jsp中文乱码解决方案 上传与下载 Hibernate 参数设置.txt MD5_Encoding.java Struts2中三种表达式符号的用法.txt

    北京中科信软AJAX培训

    中文乱码问题及其解决方案 使用responseText处理返回的普通文本信息 实战技巧:数据校验 实战技巧:级联菜单 实战技巧:条目内容 实战技巧:级联下拉列表 使用responseXML处理返回的XML信息 实战技巧:获取元对象...

    《MyEclipse 6 Java 开发中文教程》前10章

    10.5.2.5 用Spring 2.0 的@Transactional标注解决事务提交问题(最佳方案) 251 10.5.2.6 使用 HibernateTemplate 实现分页查询 254 10.6 小结 255 10.7 参考资料 255 10.7.1 MyEclipse生成的Spring+Hibernate无法...

    ssh(structs,spring,hibernate)框架中的上传下载

     以上是Spring+Hibernate将文件二进制数据持久化到数据库的解决方案,而Struts通过将表单中file类型的组件映射为ActionForm中类型为org.apache.struts.upload. FormFile的属性来获取表单提交的文件数据。  工程...

    JspRun!社区论坛系统 v6.0 bulid 090423 GBK 源码版.rar

    的基础架构采用世界上最先进流行的 web 编程组合 JAVA MySQL 实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。系统采用struts、hibernate框架及中间件的结合既实现了业务逻辑与控制逻辑的...

    JspRun!社区论坛系统 v6.0 bulid 090424 GBK 安装版.rar

    的基础架构采用世界上最先进流行的 web 编程组合 JAVA MySQL 实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。系统采用struts、hibernate框架及中间件的结合既实现了业务逻辑与控制逻辑的...

    JspRun!社区论坛系统 v6.0.0 build 20110516 GBK 安装版.zip

    的基础架构采用世界上最先进流行的 web 编程组合 JAVA MySQL 实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。系统采用struts、hibernate框架及中间件的结合既实现了业务逻辑与控制逻辑的...

Global site tag (gtag.js) - Google Analytics