现在的位置: 首页 > 综合 > 正文

struts2中文乱码问题

2013年09月19日 ⁄ 综合 ⁄ 共 822字 ⁄ 字号 评论关闭

struts2中提供了中文乱码的解决方法,在struts.xml中添加下面代码:

<constant name="struts.i18n.encoding" value="UTF-8"/>

i18n是internationalization(国际化)

 

这些配置可以去struts2-core-2.1.8.1.jar下的org.apache.struts2包里的default.properties去查找。

 

但在struts2.1.6 里面即使添加了上面的代码,也不会解决乱码问题。因为这是个bug。后面的版本已经把这个bug修正过来了。

 

外注:每个jsp页面的编码最好都改成UTF-8,保持一致。

 

如使用struts2.1.6可以使用spring的Filter解决中文编码问题

在web.xml中struts的filter之前添加spring的filter如下:

 

<filter>  
        <filter-name>encodingFilter</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>  

        <init-param>  
           <param-name>forceEncoding</param-name>   
           <param-value>true</param-value>  
        </init-param>  

</filter>

抱歉!评论已关闭.