一尘不染

JSP中的多部分表单,Glassfish中的编码问题

jsp

我使用Eclipse和Glassfish从jsp / servlet中获取了无效字符。

如果输入“Pêche”,我将得到“Pêches”。因此,这是编码问题。我尝试了几种想法,但没有任何效果。

  • 我添加了这个“ 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>

还有其他建议吗?


阅读 288

收藏
2020-06-10

共1个答案

一尘不染

最后,这似乎是Glassfish的错误:https//java.net/jira/browse/GLASSFISH-18516

彻底解决了这个问题:new String (s.getBytes ("iso-8859-1"),"UTF-8");

2020-06-10