【问题标题】:error-page directive in web.xml does not display UTF8 properlyweb.xml 中的错误页面指令无法正确显示 UTF8
【发布时间】:2010-09-25 06:38:30
【问题描述】:

我有一个包含以下条目的应用程序 web.xml:

<error-page>
    <error-code>404</error-code>
    <location>/system_files/error/p_notfound.jsp</location>
</error-page>

但是,当显示此页面时,日文字符会出现乱码。

如果直接显示或什至通过 servlet 过滤器显示,同一页面 (p_notfound.jsp) 会正确显示。

我尝试将过滤器添加到:

request.setCharacterEncoding("UTF8");

但这无济于事。有什么想法吗?

【问题讨论】:

    标签: configuration tomcat encoding utf-8


    【解决方案1】:

    我尝试了上面的建议,但实际上我通过添加响应标头来强制它通过 servlet 过滤器来解决这个问题:

    response.setHeader("Content-Type", "text/html; charset=UTF-8");

    似乎工作得很好!

    【讨论】:

      【解决方案2】:

      我也遇到过这个问题。我通过升级解决了它。您使用的是最新版本的 Tomcat 吗?

      【讨论】:

        【解决方案3】:

        使用 request.setCharacterEncoding() 对您没有帮助,因为它只是更改了用于解析请求参数的编码。

        你应该检查一下:

        • JSP 内容真的是 UTF-8 编码的吗?
        • 您是否为您的 JSP 页面设置了 pageEncoding 参数?

        【讨论】:

          猜你喜欢
          • 2011-02-16
          • 1970-01-01
          • 2012-08-20
          • 2011-03-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-03-31
          • 2018-03-19
          相关资源
          最近更新 更多