
Apache+Tomcatで環境(以後、環境A)を作り
Webアプリが正常に動いていたのですが、
別の環境(以後、環境B)で動いていたWebアプリを
環境Aの$CATALINA_HOME/webapps以下にコピーしたところ
下記のエラーが出てサーブレットが動かなくなってしまいました。
(JSPは動きます)
動作環境は以下になります。
OS:Redhat Enterprise Linux AS4 Update5
Tomcat:5.5.25
JDK:1.6.0_03
環境A、B共に同環境で
Webアプリも同じものが動いていました。
対処法の分かる方がいらっしゃいましたら
よろしくお願いします。
java.lang.NoClassDefFoundError: javax/servlet/http/HttpServlet
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:620)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
java.net.URLClassLoader.access$000(URLClassLoader.java:56)
java.net.URLClassLoader$1.run(URLClassLoader.java:195)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:188)
java.lang.ClassLoader.loadClass(ClassLoader.java:306)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
java.lang.ClassLoader.loadClass(ClassLoader.java:251)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1277)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1208)
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:370)
org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:134)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

No.1ベストアンサー
- 回答日時:
トレースを見る限り、javax.servlet.http.HttpServlerのクラスが見つからないんでしょうな。
Tomcatのクラスパスをご覧あれ。
環境変数のクラスパスでは御座らんよ。
回答いただきありがとうございます。
texjoyさんの仰るとおり
javax/servlet/http/HttpServletが見つからないことが
サーブレットが動かなくなった原因だと思いますが、
今まで動いていたのになぜHttpServletが見つからなくなったのかが
よく分かりません。
因みに、setclasspath.shに書いてあるクラスパスは以下になります。
CLASSPATH=$CLASSPATH:"$JAVA_HOME"/lib/tools.jar
No.2
- 回答日時:
環境変数のクラスパスでは御座らんよ、って、どなたかが言うてるじゃん。
BもTomcatでAと同バージョンですか?
common/libに、servlet-api.jarはありますか?(A,Bとも)
この回答への補足
回答いただきありがとうございます。
tomcatはA、B共に同バージョンです。
A、B共にcommon/libにservlet-api.jarはあります。
素人な質問で恐縮ですが、
tomcatのクラスパスはcatalina.shで確認すれば良いのでしょうか?
startup.sh内のcatalina.shを実行しているところで
catalina.shの第二引数に "javac"を追加し、
catalina.sh内のsetclasspath.shを実行しているところに
第二引数を渡すようcatalina.shとsetclasspath.shを
編集したら無事サーブレットが動くようになりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
googleスプレッドシートのGASに...
-
配列にnullを代入すると、null...
-
Googleログインボタンのデザイ...
-
JDONWROADER2のエラー修復
-
jdbcでinsert,delete,createをe...
-
「main メソッドを持つクラスが...
-
JaneStyleのスレッドが見れなく...
-
マイクラでPythonのプログラミ...
-
スプレッドシートからリマイン...
-
googleスプレッドシートのスク...
-
Verilogについて質問です。この...
-
論理回路設計をVerilogで行う問...
-
ゲーム開発の入門書を探しています
-
session,requestはjspで未定義...
-
サーブレットをapacheで公開す...
-
下記のリストならno002が含まれ...
-
is this even a thing?
-
JAの支部?地域の農協のカード...
-
えハミルトン路と全域木のちが...
-
CSV出力を画面から選択したデー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミングの問題です。大...
-
JDONWROADER2のエラー修復
-
Googleログインボタンのデザイ...
-
正規表現について質問です。 カ...
-
「main メソッドを持つクラスが...
-
googleスプレッドシートのGASに...
-
配列にnullを代入すると、null...
-
jdbcでinsert,delete,createをe...
-
jdk17.06のインストーラーが起...
-
eclipseで作ったプログラムを他...
-
マイクラでPythonのプログラミ...
-
eclipse実行ができない
-
問題作成のWebアプリの作り方を...
-
Eclipse 動的プロジェクトで404...
-
直し方について教えて頂きたい...
-
次のhtml・cssでspan内の文字を...
-
Verilogについて質問です。この...
-
EclipseとVisual StudioをPC1台...
-
プログラムの単体テストで金額...
-
ゲーム開発の入門書を探しています
おすすめ情報