URLパラメータに指定した日本語が文字化けするとき
Flexなどから、Tomcatに対してパラメータつきのURLを送信するとき、パラメータに日本語を使用していると、文字化けすることがあります。
パラメータにUTF8の文字列を指定しているためで、TomcatがこれをデフォルトではUTF8として解釈しないために文字化けします。
このとき、ISO-8859-1でエンコードされています。日本語を使っていないときは気付かない問題です。
このような場合は、Tomcatのserver.xmlにオプションを追加します。
追加するのは「useBodyEncodingForURI=”true”」です。
Connector定義に追加します。
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" useBodyEncodingForURI="true">
設定後Tomcatを再起動すると反映されます。
これで、パラメータがUTF8でエンコードされます。
今まで設定していない場合は、逆に文字化けする箇所が出てくるかもしれませんので、一通り確認したほうがいいと思います。
結構、この設定を忘れて実行環境ごとに化けたり化けなかったりで混乱することがあります。
注意が必要です。
== ランキングに参加しています。ぜひクリックお願いします ==
setup.exeが起動しないとき [Illustrator] 書き出し(各アートボードごと)で余白がついてしまうとき