真的对那个乱码的没办法了。郁闷死啦。。我从jsp传一个参数到action里面进行查询,出现了乱码。在web.xml里面是gb2312 
struts.xml里面是utf-8 
我页面用utf-8 ,可是web.xml里面的编码又 不能改,我试过用一个servlet来转码:
 
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("utf-8");
chain.doFilter(request, response);
}可是,我调试的时候,在我传参后点击按钮,提交form的时候没有来到这个方法里面。对这个乱码问题,我现在也是好晕了。。各位大侠,帮忙看看

解决方案 »

  1.   


    过滤器没生效??  检查web.xml中Filter的配置吧,尤其是url pattern
      

  2.   

    不是。。过滤器在别的地方有生效的,在我提交form的时候乱码在前,那个方法执行在后。
      

  3.   

    web.xml编码可以改啊,统一设成utf-8吧
      

  4.   

    web服务器的编码呢?是不是需要改
      

  5.   

    在server.xml配置一下它就可以了
     <Connector port="8086" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="8443" URIEncoding="UTF-8"/>
      

  6.   

    <constant name="struts.i18n.encoding" value="utf-8" />
    在struts.xml里加上这个
      

  7.   

    为何不能修改web.xml
    不统一编码出现乱码还不改。
      

  8.   

    谢谢各位。。问题解决了。是ajax乱码的问题。
      

  9.   

    不是。。过滤器在别的地方有生效的,在我提交form的时候乱码在前,那个方法执行在后。
    那你就配错了!过滤器任何时候都是在请求达到前执行!