日期:2014-05-19  浏览次数:20583 次

jsp 中文参数乱码求助
我用到了Struts2!有个A.jsp页面 它的编码格式为gb2312,A.jsp的表单提交后,中文参数在后台Action中,变成了乱码。
求各位大虾各种给力啊!
struts2的过滤器:
Java code

    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
        <init-param>
            <param-name>struts.i18n.encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>


我尝试着把UTF-8改成GBK,(A.jsp为前台页面,因为要调用各种JS,所以被要求定义为GB2312)后台页面也统一改成gb2312,修改后A.jsp表单中文参数乱码问题解决,但是其余页面,用到struts2映射的中文参数,传到后台均为乱码!这就让我很费解了,为什么同为GB2312编码,为什么A.jsp的中文参数映射就没问题,其余的就不行,请各位帮忙指点下!

------解决方案--------------------
struts配置文件那儿改改试试可不可以,struts.xml
------解决方案--------------------
看看数据库中有没有乱码,然后在看看服务器配置的编码设置
------解决方案--------------------
你A.jsp 是GB2312 ? 那肯定乱码了 啊!改了page 也要改成UTF-8的!
------解决方案--------------------
你在struts.xml文件中配置下面的代码
<constant name="struts.i18n.encoding" value="UTF-8" />

------解决方案--------------------
你struts配置了,有些过滤器吗
------解决方案--------------------
tomcat--conf--server.xml 找到<connector Port="8080" 后面加 URIEncoding="gb2312" />