统一使用UTF-8,一般是没有什么问题的。

解决方案 »

  1.   

    用 struts2.1.8版本
    在web.xml加上这个就可以了
    <filter>
    <filter-name>struts2</filter-name>
    <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
    </filter-class>
    <init-param>
    <param-name>struts.i18n.encoding</param-name>
    <param-value>UTF-8</param-value>
    </init-param>
    </filter>
      

  2.   

    1.web.xml中加入过滤器
    <!-- 中文过滤器 -->
    <filter>
    <display-name>chiineseFilter</display-name>
    <filter-name>chiineseFilter</filter-name>
    <filter-class>com.yuchengtech.common.DoEncoding</filter-class>
    <init-param>
    <param-name>coding</param-name>
    <param-value>UTF-8</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>chiineseFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>JAVA代码:
    public class DoEncoding implements Filter {
    /**
     * 编码格式
     */
    private String coding = null; public void destroy() {
    } public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain) throws IOException, ServletException {
    if (request.getCharacterEncoding() == null) {
    if (coding != null) {
    request.setCharacterEncoding(coding);
    response.setCharacterEncoding(coding);
    HttpServletRequest req = (HttpServletRequest) request;
    req.setCharacterEncoding("UTF-8");// 应根据你使用的编码替换UTF-8
    chain.doFilter(request, response);
    }
    }
    } /**
     * 初始化
     */
    public void init(FilterConfig config) throws ServletException {
    coding = config.getInitParameter("coding"); }2.设置JSP页面的编码为UTF-8
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    </html>
      

  3.   

    你的数据库的编码,也是UTF-8吗?一定要保证所有的编码都是,仔细检查一下吧,实在不行的话就写一个转码器,很简单的。
      

  4.   

    补充一条。TOMCAT 也设置UTF-8的就没有事了。
      

  5.   

    直接在struts的配置文件里面配置就行了
      

  6.   

    在和applicationContext.xml同级目录下加入 struts.properties ,struts.properties里面内容:struts.objectFactory=spring
    struts.devMode = true
    struts.locale=zh_CN
    struts.i18n.encoding=GB2312
    我遇到过这样的问题,不知道能不能帮你解决你的问题