[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 メーリングリストの案内