日期:2014-05-17  浏览次数:20650 次

大神救命啊!Struts页面乱码问题。
问题是这样的:  我一个登录页面,一个主页, 登录成功就返回SUCCESS,跳转主页,request还传了一个List过去。  跳转之后,List的值也取出来,而且不乱码。  问题是我JSP页面布局的那些中文全乱码了,页面是UTF-8 编码,然后我在页面和浏览器也选择编码,GB2312那些居然全部都不起作用,那个主页就经过一下Struts,就成这样了,哪位大哥告诉我,怎么解决啊。
(web配置过滤器那些都搞过了,没效果。)


------解决方案--------------------
在你的action控制类里面 要调用的那个方法里面 这样搞
一,获取request,
然后给定request编码
request.setCharacterEncoding("UTF-8");
同时注意,jsp页面的编码要保持一致。
若是有response请求也会造成response乱码现象,比如用到了ajax的话就必须要考虑乱码的问题了
下面是ajax刷新response乱码解决办法,原理一样
response.setCharacterEncoding("utf-8");
设定编码值就行了。 
------解决方案--------------------
在你的action控制类里面 要调用的那个方法里面 这样搞
一,获取request,
然后给定request编码
request.setCharacterEncoding("UTF-8");
同时注意,jsp页面的编码要保持一致。
若是有response请求也会造成response乱码现象,比如用到了ajax的话就必须要考虑乱码的问题了
下面是ajax刷新response乱码解决办法,原理一样
response.setCharacterEncoding("utf-8");
设定编码值就行了。  
------解决方案--------------------
lz或者配置tomcat,统一为utf-8。。。
具体配置:
tomcat目录下的conf/server.xml  记事本打开
    <Connector executor="tomcatThreadPool"
               port="1515" protocol="HTTP/1.1" 
       URIEncoding="utf-8"(就加这个)               connectionTimeout="20000" 
               redirectPort="8443" />