tomcatのJVM:jre1.5
Javaのバージョン:Java5
Jreのバージョン:jre1.5
dwrのバージョン:dwr1
で動きました。
dwrでエラーが発生していたのはJava1.4からJava5にバージョンアップした際に
org.apache.xalanとかいうパッケージが見えなくなっていたせいらしいです。
xalan.jarが見えなくなるとxmlが読めなくなって、その結果dwr.xmlが読み込めなくなったので
dwrを利用できなくなった。というオチでした。
Java1.4で読み込めていたものがJava5になると読み込めなくなる仕組みは他のサイト様で説明されていますので割愛いたします(よく分かってないだけ)
で、肝心の文字化けの件ですが
とりあえず整理。
shift_JIS→日本語(漢字)表現可能な文字コード
MS932→shift_JISをゲイツが拡張したもの(Eclipseのデフォルトエンコード?)
windows_31J→MS932がさらに進化? IANAとかいう国際機関に登録されている。
Unicode→世界共通言語(要約するにもほどがある)
UTF-8→Unicodeの一種。JSPファイルのサーブレットクラスファイルは、この文字コードになる。
ISO-8859-1→ヨーロッパで使われる文字コード。TomcatにおけるJSP出力時のデフォルトエンコード(contentTypeで上書きできる)
で実際の処理の流れはといいますと
JSPファイルにアクセス
→pageEncodingで指定されている文字コードでJVMが読み込む
→JVMでUTF-8に変換してサーブレットを作成
→サーブレットがcharsetで指定されている文字コードで出力。
→出力したファイル内でJavaScriptの外部ファイル(jsファイル)を読み込む
→jsファイルのエンコードはShift_JIS(MS932)
→出力したファイルのcharsetがShift_JIS以外の場合
jsファイルをShift_JIS以外のエンコードで読み込むため文字化けする。
JSP→(読み込み)→JVM→(コンパイル)→Servlet→(出力)→JSPってな流れですね。
とはいえ自信が無いので、何か嘘情報混じってそうです。
間違いに気づき次第修正していきます。
ご利用の際は要注意です。
