2008年8月20日水曜日

なんというトラップ Tomcatでの文字化け

今更文字化けでハマるとは・・・
しかもトラップのような仕様です。

以下が条件です。
▽ jstlのc:url c:paramなどを使って日本語のパラメータをJSPのエンコーディングでエンコードする。
▽ GETで送信する
▽ JSPのエンコードがwindows-31jである (おそらくUTF-8以外はダメでしょう)

TOMCAT5以降は、GETで送信された文字列は問答無用でUTF-8で解釈するそうです。
Tomcat 5.xにおいてこの問題を解消するには、同コンテナの設定ファイルserver.xmlのConnector要素にて、useBodyEncodingForURI属性を以下のように指定すればよい。
詳細は以下参照
@IT Javaの文字化け対策FAQ(3)

何という・・・

0 件のコメント: