问题:struts1.2中文乱码页面编码:gb2312问题描述:页面提交,action从actionForm接收,接收后其中的中文经测试是乱码备注:不要提过滤器,不要说数据库连接的问题,因为还没到数据库,离数据库远着呢

解决方案 »

  1.   

    那就看你有没提交到servlet里了
      

  2.   

    没有提交到servlet里 用的是action 继承自MappingDispatchAction直接从actionForm里读取的
      

  3.   

    我想最基本的<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>应该改了吧
      

  4.   

    不是开发环境的问题,我想是actionForm的问题,但不知道问题在哪儿
      

  5.   

    创建一个MyRequestProcessor 类继承struts的RequestProcessor类 package fo;import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.RequestProcessor;public class MyRequestProcessor extends RequestProcessor
    {
     protected boolean processPreprocess(HttpServletRequest request,
              HttpServletResponse response)
     {
      try
      {
       request.setCharacterEncoding("utf-8");
      }
      catch(Exception e)
      {
       System.out.println("设置转换字符失败!");
      }
      return true;
     }
    }    然后在struts-config.xml中进行相应配置。<controller processorClass="fo.MyRequestProcessor"></controller>    注意这里的<controller processorClass="fo.MyRequestProcessor"></controller>不要放在最后。到次为止,所有的工作都已经完成,剩下的只是进行运行了,注意一点,在能够进行编码设置的地方都设成中文编码始终是必要的。http://www.javaresearch.org/article/106732.htm
      

  6.   

     The content of element type "struts-config" must match "(display-
     name?,description?,data-sources?,form-beans?,global-exceptions?,global-
     forwards?,action-mappings?,controller?,message-resources*,plug-in*)".把<controller processorClass="fo.MyRequestProcessor"> </controller> 放入struts配置文件会报上述错误
      

  7.   

    中文乱码,永恒的王道:凡是需要编码的地方,UTF-8
      

  8.   

    你用的是tomcat?如果是tomcat的话,需要修改配置文件,将PageEncoding="UTF-8"改为PageEncoding='gb2312'
      

  9.   

    弱弱的问一句,修改哪里?我用的是tomcat5.5
      

  10.   

    struts和页面的编码改成一样的。同时服务的编号也要改成和页面一样的
      

  11.   

    修改toamcat conf文件夹下面的添加一句URIEncoding="gb2312"(这个编码和你页面的一致)
     
     <Connector port="8000" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="8443" URIEncoding="gb2312"/>
      

  12.   

    ~~~~(>_<)~~~~ 还是不行啊
      

  13.   

    几天前的问题了,今天拿来一看原来是过滤器里少了个request的设置,代码是拷的原来的,郁闷死,结贴去!多谢小9啊!