Java サーブレットを使用してレッスン用の Web アプリを作成しています。ある時点で、jsp ページにリダイレクトし、そこで使用したい情報も送信したいと考えています (GET メソッドを使用)。私のサーブレットには、次のコードがあります。
String link = new String("index.jsp?name="+metadata.getName()+"&title="+metadata.getTitle());
response.sendRedirect(response.encodeRedirectURL(link));
jsp では、これらのパラメーターを次のように取得します。
<%
request.getParameter("name");
request.getParameter("title");
%>
パラメータにラテン文字のみが含まれていない場合を除いて、すべて正常に機能します(私の場合、ギリシャ文字を含めることができます)。たとえば、name=ΕΡΕΥΝΑΣ の場合、name=¡¥ を取得します。このエンコードの問題を修正するにはどうすればよいですか (UTF-8 に設定します)? encodeRedirectURL() がこの仕事をしていませんか? ある時点で encodeURL() も使用する必要がありますか? 私は最後のものを試しましたが、問題はまだ存在していました。
前もって感謝します :)