Eclipse と Glassfish を使用して、jsp/サーブレットから無効な文字が表示されます。
「Pêche」と入力すると、「Pêches」が得られます。つまり、これはエンコードの問題です。私はいくつかの考えを試しましたが、何もうまくいきません。
- フィルターを追加しようとしました ( JSP でのエンコードの問題)
- web.xml に jsp プロパティを追加しようとしました ( glassfish 3.1 で文字セットを ISO-8859-1 から UTF-8 に変更できません)
- request.setCharacterEncoding("UTF-8"); によって Java コードで自分自身の文字エンコーディングを変更しようとしました。
- VM引数を追加しようとしました(グラスフィッシュ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に追加しました
私はまだモジバケを取得します。
ここに私のサーブレットコードがあります:
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>
他の提案はありますか?