【发布时间】:2012-10-28 16:52:53
【问题描述】:
所以我以一种天真的方式使用 GET 重定向我的用户:
response.sendRedirect("/path/index.jsp?type="+ e.getType()
+"&message="+ e.getMessage());
在我不得不发送消息之前,这一切正常,作为要显示给用户的实际文本。问题是消息中是否包含非 ASCII 字符。我的 .jsp 文件以 UTF-8 编码:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
所以“消息”中的所有非 ASCII 字符都会出现乱码。我不想将我的 JVM 默认编码设置为 UTF-8,那么我该如何解决呢?我尝试使用
response.setCharacterEncoding("UTF-8");
在重定向之前在 Servlet 上,但它不起作用。当我尝试执行时:
out.print(request.getCharacterEncoding());
在我的 .jsp 文件中,它会打印“null”。
【问题讨论】:
标签: java jsp servlets utf-8 character-encoding