プロが教える店舗&オフィスのセキュリティ対策術

tomcat4.0.2とapache1.3.26でwindows2000で連携させようとして↓ここを参考にインストール、設定しました。
http://www5b.biglobe.ne.jp/~y-tomy/tomcat/fig_in …
しかし、examples/servlet/はサンプル全て表示されるのですが、examples/jsp/はエラーが出て表示されません。どなたか原因がわかるかた教えてください。

エラーの内容
Apache Tomcat/4.0.2 - HTTP Status 500 - Internal Server Error
javax.servlet.ServletException: サーブレット jsp のServlet.init()が例外を投げました
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:935)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:653)

root cause

java.lang.NoSuchMethodError: javax.servlet.ServletContext.getResourcePaths(Ljava/lang/String;)Ljava/util/Set;

(エラーの内容長いため途中省略)

A 回答 (7件)

JSP が表示できるのですから tools.jar はちゃんと見えてるみたいですね。


普通のサーブレットが実行できるのなら、
servlet.jar が見えてない、ということもなさそうです。

ServletContext#getResourcePaths メソッドは、サーブレットAPI2.3 から
追加されているので、servlet.jar のバージョンに問題があるかも知れません。
JAVA_HOME/jre/lib/ext 配下などに、古い servlet.jar が残ってたりしませんか。

さすがに TOMCAT 内にある servlet.jar のバージョンがおかしい、
ということは考えにくいので。
    • good
    • 2
この回答へのお礼

回答ありがとうございます。
jre/lib/extにservlet.jarが残っていました!!
しかも日付を見ると2000/12/12でした。早速削除して実行してみたらなんと表示されました!!
本当にありがとうございました。

お礼日時:2002/08/13 10:47

くどいようですが、すみません。

ネットサーフィンをしていたら、参考になりそうな記述があったものですから。

クラスパスに
D:\j2sdk1.4.0_01\jre\lib
D:\j2sdk1.4.0_01\lib
D:\j2sdk1.4.0_01\lib\tools.jar
D:\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar
の4つを含める必要があるらしいです。

tools.jarの中にサーブレット用のjavacコンパイラが入っており、servlet.jarにサーブレット関係のクラスファイルが入っているそうです。

詳しくは、下記のサイトで、「JSP」と「tools.jar」で検索してください。

参考URL:http://java-house.jp/ml/
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
classpathに
C:\j2sdk1.4.0_01\jre\lib
C:\j2sdk1.4.0_01\lib
が含まれてなかったので追加しました。
今度こそって期待しながらやってみたんですがだめでした。

お礼日時:2002/08/13 10:44

J2SDKは何を使っていますか?



もし J2SDK 1.4.x を使っているのだったら、
$TOMCAT_HOME/common/lib/toos.jar を
tools.jar-bk などに名前を変更して、
J2SDK1.4 の lib/tools.jar を $TOMCAT_HOME/common/lib/toos.jar にコピー
してみてはどうでしょうか?

もしうまくいかなかったら、tools.jar は元に戻してください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
jdkはj2sdk1.4.0_01を使っています。
さっそく試してみたのですがうまくいきませんでした。
もうちょっと頑張ってみます。

お礼日時:2002/08/12 19:10

たしかに、J2EEを使う時、他のEJBコンテナというのを使うのですが、その時は、CATALINA_HOMEで設定すると読んだ気がします。

しかし、普通は、TOMCAT_HOMEでも良いと思います。(よくわからないのですが、私のパソコンでは、TOMCAT_HOMEで無事動いてます。)

あと、以前の環境変数は、消したほうがよろしいかと思います。

僕も、あまり難しいことは分かりませんが、私のパソコンではD:\Program Files\Apache Tomcat 4.0としか書いてないけど、すべてうまくいっています。

もし、動かなかったら、ごめんなさい。では、がんばってください。
    • good
    • 0
この回答へのお礼

何度も回答ありがとうございます。
CATALINA_HOMEからTOMCAT_HOMEに変更して見たのですが
やっぱり結果は変わりませんでした。ちなみにTOMCAT_HOMEを消してCATALINA_HOMEのみにしてもやっぱりjspだけ実行できませんでした。

お礼日時:2002/08/12 19:15

>このページからNumberguessなどのExecuteのリンクを押下してサンプルを見ようとするとInternal Server Errorが出てしまいます。



上記は環境変数TOMCAT_HOMEを設定していないからだと思われます。JAVA_HOMEと同じようにTOMCAT_HOMEというのも設定が必要です。さっき書き忘れました。すみません。

TOMCAT_HOMEは、僕の場合だとC:\Program Files\Apache Tomcat 4.0となります。インストールしたディレクトリにあわせて設定してください。
    • good
    • 0
この回答へのお礼

何度も回答ありがとうございます。
TOMCAT_HOMEですが、別のホームページでtomcat4.*はCATALINA_HOMEとして設定するって書いてあったのを見てCATALINA_HOMEとして設定しています。
以前tomcat3.2.4を使っていたのですがその時の環境変数のTOMCAT_HOMEはそのまま残っています。

お礼日時:2002/08/12 15:16

あと、補足ですが、クラスパスの設定があまり載ってませんね。




C:\>echo [%CLASSPATH%]
[D:\j2sdk1.4.0_01\jre\lib;D:\j2sdk1.4.0_01\lib;D:\j2sdk1.4.0_01\lib\tools.jar;D:
\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar;D:\Program Files\Apache
Tomcat 4.0\webapps\jsp10\WEB-INF\classes]


私のパソコンのクラスパスは上記の通りです。なお、httpd.confはもっと簡単に設定してあります。以下の5行を末尾に記述しただけです。あの、ホームページはなぜあんなにゴチャゴチャ書いてあるんでしょうか?私の本にはあんなにゴチャゴチャ書いてありません。


LoadModule webapp_module modules/mod_webapp.so
WebAppConnection connwarplocalhost:8008
WebAppDeploy examplesconn/examples
WebAppDeploy jsp10conn/jsp10
WebAppDeploy beginconn/begin


最後の2行は僕が使っているディレクトリの名前なので、気にしないでください。要するに僕は、jsp10とbeginというフォルダにjspのファイルを置いているということです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
ちょっと説明不足だったようです。
http://localhost/examples/jsp/index.htmlは表示されるんですが、このページからNumberguessなどのExecuteのリンクを押下してサンプルを見ようとするとInternal Server Errorが出てしまいます。
これも動作が不安定だから起こる現象ならいいのですが・・・。

お礼日時:2002/08/12 14:20

 僕のパソコンでも同じ状態です。

質問に載っているホームページを見たんですが、以下のことが書いてありますよね。

/***************************************************************/
下記に示す方法は、tomcat と apache の連携に webapp-module を使用します。このとき、tomcat の機能を利用したページを表示しようとすると

画像が表示されない
サーブレット、JSP が実行されない
ページの表示が極端に遅い
などの現象が発生する事が確認されています。(同様の報告も数多く頂いています。)このため webapp-module は、運用上不安定な部分を抱えている事も考えられますので、下記の方法を試される方は、この事をご了承の上でご利用ください。(以上、2002/4/5 追記)
/**************************************************************/

上記が原因だと思います。しかしながら、本に書いてあるようなサンプルは問題なく実行できますので、あまり気にしないで勉強を進めたほうがよろしいかと思います。

なお、http://localhost:8080/index.htmlを開き、JSP EXAMPLESをクリックしてください。そうすると、同じページが開きます。その後、http://localhost/examples/jsp/index.htmlを入力すると、質問に載っていたページも、問題なく開けるようになります。
    • good
    • 0

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