[mayaa-user:698] WebSphere6.1でsun.io.MalformedInputException
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2008年 11月 14日 (金) 17:40:49 JST
初めまして。小林と申します。
現在開発中のプロジェクトでmayaaを使わせていただいています。
WebSphere6.1上で、mayaaを動かしたときに疑問が出ましたので
質問させていただきます。
かいつまんで経緯を記述しますと、
1.Tomcat5.5 上で、mayaaを使って開発していた。
sample.html(Shift-JISで保存)
内容は
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Windows-31J">
のように書いていて、うまく行きました。
(mayaaによってパースされて、正常にレスポンスが返ってきたと言うこと)
2.同じモジュールを、WebSphere6.1上に デプロイしました。
すると、sun.io.MalformedInputException が出てしまい正常に動作しませんでした。
3.文字コードだなとアタリを付けて、やってみた結果は以下の通りです。
htmlを UTF-8 で保存 + charset=UTF-8 → 正常に動作した。
htmlを UTF-8 で保存 + charset=Windows-31J → 動作するものの文字化け
htmlを Shift-JIS で保存 + charset=UTF-8 → sun.io.MalformedInputException
htmlを Shift-JIS で保存 + charset=Shift-JIS → sun.io.MalformedInputException
htmlを Shift-JIS で保存 + charset=Windows-31J → sun.io.MalformedInputException
4.過去ログには以下のような記述がありました。
http://ml.seasar.org/archives/mayaa-user/2008-January/000617.html
> MS932 のファイルを UTF-8 だとしてパースしようとしているなら、
> この例外が出るでしょう。
> Mayaa は charset 指定をファイルのエンコーディングとみなして
> パースしますので、ファイルの文字コードと charset 指定は
> 揃えてください。
疑問としては、
Shift-JIS と Windows-31J の組み合わせでうまく行きそうなのだが、
なぜ行かないんだろう?。 と言うことです。
あと、Tomcat5.5 ではなぜうまく行くんだろう?。と言うのも疑問にあります。
勉強不足ですいません。
どなたかご存じの方、ご教授いただけると幸いです。
やはり、これからはUTF-8に合わせるべきですかね...。
以上、よろしくお願いいたします。
小林貴生
mayaa-user メーリングリストの案内