今日はTomcat5の日本語コード変換処理の設定を行います。
設定方法
1.Tomcatの[server.xml]を設定する。
GETでの受渡し時のエンコードを有効にするため
useBodyEncodingForURIに”true”を設定する。
<Service name="Catalina"> <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" useBodyEncodingForURI="true" />
※赤字部分を追加
2.コード変換フィルタの追加
Tomcatにはサンプルとしてコード変換するためのフィルタが用意されています。これを各アプリケーションのclassesフォルダにコピーして使用します。
/srv/www/tomcat5/base/webapps/servlets-examples/WEB-INF/classes/
の中にあるfiltersフォルダを
/各アプリケーション/WEB-INF/classes/フォルダの中にコピーします。
3.web.xmlの設定
先ほどコピーしたフィルタを有効にするために、web.xmlを編集します。
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <filter> <filter-name>Set Character Encoding</filter-name> <filter-class>filters.SetCharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>Shift_JIS</param-value> </init-param> </filter> <filter-mapping> <filter-name>Set Character Encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>