Tomcat5の動き

Tomcat5.xを使用して,日本語をGETパラメータで送ると,文字化けが発生するようです.
知りませんでした.

エンコーディングフィルタを用意しても,文字化けは防げません.(らしいです)
Tomcat5では,GETで受信したパラメータに対してsetCharacterEncodingを適用しないようになっている...(らしいです)
これを防ぐには,server.xmlを編集する必要があります.(らしいです)

useBodyEncodingForURI="true"を設定します.

server.xml

<Connector
    port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
    enableLookups="false" redirectPort="8443" acceptCount="100"
    debug="0" connectionTimeout="20000"
    disableUploadTimeout="true" useBodyEncodingForURI="true"/>

知らなかった...

Tomcat5だと,GETパラメータをISO-8859-1で送っていることに原因があるそうです.

ま,自分は試してないんですけどね.