我正在使用 Eclipse 和 Glassfish 从我的 jsp/servlet 中获取无效字符。
如果我输入“Pêche”,我会得到“Pêches”。所以,这是编码问题。我尝试了几种想法,但没有任何效果。
- 我试图添加一个过滤器(JSP 中的编码问题)
- 我尝试在 web.xml 中添加 jsp 属性(在 glassfish 3.1 中无法将字符集从 ISO-8859-1 更改为 UTF-8)
- 我试图通过 request.setCharacterEncoding("UTF-8"); 在 java 代码中更改我自己的字符编码。
- 我尝试添加 VM 参数(无法在 glassfish 3.1 中将字符集从 ISO-8859-1 更改为 UTF-8),但我不能因此(Eclipse - 在运行配置中找不到服务器)
- 我将此“ accept="UTF-8" accept-charset="UTF-8" " 添加到我的
- 我添加
<parameter-encoding default-charset="UTF-8"/>
了 sun-web.xml 和 glassfish-web.xml
我仍然得到 Mojibake。
这是我的servlet代码:
String name = (String) request.getParameter("templateName");
这是我的jsp内容:
<%@ page pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>....</title>
</head>
<body>
<form action="<c:url value="/form/edit" />" method="post" enctype="multipart/form-data">
<input type="text" id="templateName" name="templateName" />
<br />
<input type="submit" value="Valider" class="button button_blue margin_button_form"/>
</form>
</body>
</html>
还有什么建议吗?