Windows2000で、Tomcat3.2.1 + ApacheをWebサーバーとしてJSP + Bean のWebアプリケーションを開発しています。
Beanを再コンパイルした後は正常に動作しますが、夜Windowsをシャットダウンして、翌朝立ち上げると、下記のようなエラーが出ます。
-----------------------------------------
JasperException: R(/XXX + /yyy.jsp + null) Unable to compile class for JSP %TOMCAT_HOME%\XXX\WEB-INF\classes\zzz\A.java:1: このソースファイルのエンコーディングがプラットフォームのものと異なっている可能性があります。 -encodingオプションを指定してファイルのエンコーディングを指定するか、あるいはnative2asciiユーティリティを使用してソースコードをASCII 文字だけにしてください。
------------------------------
<試したこと>
●ソースファイルを、パッケージ化せずに、全てnative2asciiで変換してからコンパイル
●ソースファイルをパッケージ化して、native2ascii変換せずにコンパイル
●ソースファイルをパッケージ化して、native2ascii変換してからコンパイル

<結果>いずれも、その日のうちは Windowsを何度 <シャットダウン → 起動> しても、問題なく動作しましたが、翌朝になると、Windowsを起動した後Javaファイルを再コンパイルせずに実行すると上記のようなエラー。

書籍やサイトを検索してみましたが、このような事態を解釈する上で参考になるようなものを見つけることができませんでした。どのような原因が考えられますでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

Tomcat3.2.1とかって、JSPでファイルをincludeする時に、charsetが指定できませんでしたよね?


そのへんと、関係ありそうでしたら、Tomcat3.2.3にすると良いかもしれません。
Tomcat3.2.3では、解決されているそうなので。

その辺の事が、月刊JavaWorld 11月号(サーブレット・JSPトラブルシューティング特集)に出てるみたいです。
サーブレット・コンテナについてのトラブルも載っているそうですので。
(私は、まだ目を通してないので全然関係なかったら、ごめんね。)

ではでは。

この回答への補足

JGuruで、CLASSPATHにservlet.jarとj2ee.jarの両方を含めているとトラブルの原因になることがあるというような記述を見つけました(j2ee.jarの中にservlet.jarが含まれているため)。
先週末にj2ee.jarをCLASSPATHから外してみたら、今朝はエラーもなく調子がいいようです。

せっかくですので、この機会にJavaWorld付属のTomcat3.2.3を入れようと思います。mkimさん、どうもありがとうございました。

補足日時:2001/10/22 09:12
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。早速、今夜本屋さんに行ってみようと思います。

私のほうでも、あれから更にWEB検索し、文字コードについては、ToRAさんのページ
http://www.mars.dti.ne.jp/~torao/program/servlet …
で、tomcat.confに下記のように設定するらしいことを発見しました。

wrapper.bin.parameters=-Dfile.encoding=Shift_JIS -Duser.region=ja -Duser.lang=JP -Duser.timezone=JST

が、Apacheがこの行を理解できないというエラーが出てしまいました…。

ところで、LinuxマシンのPostgreSQLをDBサーバーとして使用しているのですが、それもこの問題に関係しているのでしょうか…?
以前、同じアプリケーションを、tomcatと同一のWindowsにいれたOracleを使用するようにしていたときには、このようなエラーは出ていなかったような気がします。

お礼日時:2001/10/12 13:02

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング