日期:2014-05-18  浏览次数:20707 次

struts2的url乱码问题,action传值没有乱码。
jsp页面编码为utf-8,则在action中取到form中的值正常。但是通过url传递过来的中文有问题。通过       String   username=new   String(getUsername().getBytes( "ISO-8859-1 "), "UTF-8 ");转换后,有些汉字正常,但是如果象这种则不正常:初一一班,显示的为 "初一一口 ".
大家有没有url传值的经验,请指教

------解决方案--------------------
把你要传递的参数放在浏览器地址里面,看是什么结果!
------解决方案--------------------


在请求页面写上:
response.setCharacterEncoding( "utf-8 ");
在接受请求的页面写上:
request.setCharacterEncoding( "utf-8 ");
------解决方案--------------------
加一个encodingFilter就好了
------解决方案--------------------
如果是tomcat的话 在server.xml 的 <Connector port= "8080 " 中加入
URIEncoding= "UTF-8 "
最好在写个 过滤器.

------解决方案--------------------
关注
------解决方案--------------------
加filter 改tomcat 也不一定就能完全解决 有些版本有问题
避免url中文
中文参数用post

------解决方案--------------------
乱码很头疼
------解决方案--------------------
在传之前先转成ascii码 action再转回来 我就这么干过
------解决方案--------------------
下面的可以实现
String url= "message.jsp?msg= " +java.net.URLEncoder.encode( "ClientInfoServlet: " + e.getMessage());
response.sendRedirect(url);

message.jsp页面
String str=request.getParameter( "msg ");
str=new String(str.getBytes( "ISO-8859-1 "));
------解决方案--------------------
顶zhb_0324朋友,他说的,就解决我的问题了

加filter 改tomcat 也不一定就能完全解决 有些版本有问题 
避免url中文 
中文参数用post