2004-09-13 [長年日記]

[Java][Tomcat] <jsp:include ... />でインクルード先が文字化け

Linux上でWindows-31JなHTMLファイルを<jsp:include ... />すると、文字化けが発生。Tomcatのソースを読むと、DefaultServletでInputStreamReaderを作成するときにencodingを指定していない。これだと文字化けもする罠。

Tomcatの起動時にデフォルトロケールやfile.encodingを使って、無指定のときのencodingを設定できる。しかしこれだとWeb Application毎にリソースのEncodingが異なっていたら対応できない。そもそもリソースのEncoding如きがApplication Server全体の設定に依存して良い物とも思えない。

と言うわけで、DefaultServletにfileEncodingパラメータを追加するpatchを作ってみた。これならWeb Application配置時に指定できるので、良いと思われる。さすがにWeb Application内のリソースで複数のencodingが混在する事は無いだろうし。

そもそも、コメントとしてFIX MEと記載されていたこともあり、Bugzzilaにも登録してみる。かなり英語が不安だが、採用されるといいなぁ。

本日のツッコミ(全3件) [ツッコミを入れる]
_ matobaa (2004-09-14 07:44)

Vote! しときやした

_ やまぐち (2004-09-14 08:12)

大変お世話になりましたm(_ _)m

_ TKY (2004-09-14 13:07)

Voteありがとうございます。

[]

«前の日記(2004-09-12) 最新 次の日記(2004-09-14)»