■
useBodyEncodingForURI は、request.getPathInfo には効かない。残念。
ttp://localhost:8080/hoge/fooServlet/%E3%81%82.bar?a=%E3%81%82
を GET したとき、
- useBodyEncodingForURI="true"
- request.setCharacterEncoding("UTF-8");
が行われていると、request.getParameter("a") は "あ" を取得できるけれど、request.getPathInfo は "/???.bar" になってしまう。
<対応>
request.getPathInfo した値を ISO-8859-1でバイト配列に戻し、UTF-8で文字列へ復号化する。