tomcat サーブレットエラー

このQ&Aのポイント
  • tomcatサーブレットエラーの原因と解決策
  • Linux/FedoraCore5環境でのtomcat6.0.10/Webポート8080の設定に関する問題
  • /usr/local/sample/demo/data/WEB-INF/lib/に配置したsample.jarのクラスが呼び出せないエラー
回答を見る
  • ベストアンサー

tomcat サーブレットエラー

表題の件、原因がつかめず困っています。 何かアドバイスある方いらっしゃれば是非お願いいたします。 環境 Linux/FedoraCore5 tomcat6.0.10/Webポート8080 apacheは使っていません /usr/local/bin/tomcat/conf/Catalina/localhost/fs.xmlの設定 <Context path="/fs" reloadable="true" docBase="/usr/local/sample/d emo/data" crossContext="false" cookies="false" /> /usr/local/sample/demo/data/WEB-INF/web.xmlの設定で、 あるサーブレットクラスを呼び出すようにしています。 そのクラス内で、net.sample.sql.ConnectionManagerという クラスを呼び出しているのですが、実行時に以下のエラーが出ます。 java.lang.NoClassDefFoundError: Could not initialize class net.sample.sql.ConnectionManager net.sample.sql.ConnectionManagerはsample.jarに含まれており、 /usr/local/sample/demo/data/WEB-INF/lib/に配置しています。 (呼出元のクラスもこのディレクトリにあります。) 原因となりえる場所として、考えられることは何かありますでしょうか? よろしくお願いいたします。

  • Java
  • 回答数2
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
noname#33813
noname#33813
回答No.2

No.1です。 Tomcat4からのバージョンアップで例外が発生する要因はわかりかねます。 実際に例外が起きているとすると、スタックトレースから付き詰めていけるかと思いますので、 一度ConnectionManagerクラスのstaticイニシャライザの例外処理をご確認頂ければと思います。 また、合わせて例外がtomcatの標準出力に出ていないかご確認ください。 他には、Tomcatのlogsに出力される各種ログを一度ご覧になっては如何でしょうか。 何かでているかもしれません。

tama_sr
質問者

お礼

いろいろとアドバイスありがとうございます。 こちらの事情でコードレベルでのトレースが難しいため、 原因追求のタスクは別で行うことにしました。 tomcat4で動かした場合に正常に動いたので、 バージョンアップによる影響には間違いなさそうです。

その他の回答 (1)

noname#33813
noname#33813
回答No.1

ConnectionManagerクラスのstaticイニシャライザで例外が発生していませんか? staticイニシャライザで例外が発生した場合、java.lang.NoClassDefFoundError になったような気がします。

tama_sr
質問者

お礼

>ConnectionManagerクラスのstaticイニシャライザで例外が発生していませんか? >staticイニシャライザで例外が発生した場合、java.lang.NoClassDefFoundError >になったような気がします。 なるほど、知りませんでした。 もしそうならばパス関連ではなさそうですね。 ただ、実は今回apache+tomcat4で稼働していたシステムをtomcat6の環境に移すという作業をしてまして、 クラスのコード自体に問題はないと思っているのですが、 何か例外が発生する原因など考えられますでしょうか?

関連するQ&A

  • Eclipseにおけるサーブレット作成時のエラー(TOMCAT)

    JAVA初心者です。非常に困っておりどうしてよいのかわかりません。よろしくお願いいたします! eclipseにてサーブレットを作成したのですが、実行ができません。 ---------- 環境 OS:Windows2000Server Eclipse ver2.1.1 TOMCAT ver4.1 プロジェクト名Sample 実行ファイルHelloSrvlet.java ---------- "web.xml"をエクリプスのプロジェクト下のWEB-INFに作成した場合に『HTTP Status 404』エラーが表示されてしまいます。 servlet.xmlにも<context・・・と設定はしております。web.xmlを作成しなかった場合にはadmin上でSampleがありディレクトリ構成も見えるのですが、作成するとディレクトリ構成も見えなくなります。何が悪いのかすらわからない状況です。 どなたか教えて下さい!

    • ベストアンサー
    • Java
  • Tomcatにおけるサーブレットの呼び出し

    tomcatに関してですが、現在サーブレットからjspを呼び出すようなことをしたいと思い、web.xmlを以下のように設定し、”http:localhost:8080/servlet/Login”としても『HTTP Status 404 - 』が返却されます。jspからサーブレットを呼び出すことはできるのですが・・・(この場合、jspファイルをWEB-INFの直下にディレクトリを作成するとやはりアクセスができませんでした。WEB-INFと同レベルに置けばアクセスは可能でした。)。 どなたかわかる方がいれば教えて下さい! よろしくお願いします。 --------------- 環境 --------------- Windows2000Server eclipse ver2.1.1 tomcat ver4.1 --------------- ディレクトリ構成 --------------- WEB-INF Lclasses | LLogin_serv.java Ljsp LLogin.jsp --------------- web.xml --------------- <?xml version="1.0" encoding="shift_jis"?> <!DOCTYPE web-app PUBLIC "-//SUN Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>Login</servlet-name> <servlet-class>serv.Login_serv</servlet-class> </servlet> <servlet-mapping> <servlet-name>Login</servlet> <url-pattern>Login</url-pattern> </servlet-mapping> </web-app> 補足:tomcat-confにあるweb.xmlの『invoker』はコメントを外し有効にしてます。

    • ベストアンサー
    • Java
  • Tomcatの設定について、404エラー

    本日の質問は、Tomcatのエラー404になります。 PCの環境OS:Windows7 JSPを始めるつもりで、下記のものをインストールしました。 javaのJDKをインストール済で、 Tomcat/7.0.32をインストールしました。 C:\Tomcat7\webapps\Sample_JSP\Sample_01.jsp C:\Tomcat7\webapps\Sample_JSP\WEB-INF\Sample_01.xml 環境変数   変数名:CATALINA_HOME   変数値:C:\Tomcat7 という感じで、Webページを参考にファイルを作り、 http://localhost:8080/は、表示させることができ、 http://localhost:8080/Sample_JSP\Sample_01.jspについても 表示出来ましたが、 http://localhost:8080/のページの HTTPステータス 404 - /manager/status HTTPステータス 404 - /manager/html HTTPステータス 404 - /host-manager/html どのページも、説明 The requested resource is not available. と出て、 Webページがが表示しません。 少し調べた所によると、tomcat-users.xml このファイルを なんか設定するように有り、admin の設定が入ってなかったので、 付け加えてみたり、削除してみたり、再起動もしました。 初心者なので、どこがおかしいのか良く解りません。 参考になるページでもありましたら、 どうか、よろしくお願いします。

  • Tomcat で Java サーブレットを動かす方法

    こんにちわ Tomcat 3.3.1 でサーブレットを動作させる実験をしています。 現在サンプルプログラムが、http://[host_name]:8080/examples/ で動作しています。 ※ウェブサーバーは使用していません。 ここで質問です。 自分で任意のフォルダを作成し、その中にクラスファイルを格納して実行する場合の設定方法が分かりません。 examples フォルダ以下を見ると、 Web-inf servlets Meta-inf 等のフォルダが有ります。 サーブレットを実行する際に、この構成は必須なのでしょうか? この辺の設定方法が解説されているサイトまたは、書籍など有りましたら情報をください。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • tomcatでサーブレットが呼び出せません

    最近javaを始めたものなのですがさっそく躓いています http://www.javadrive.jp/servlet/schedule/現在、上記のサイトを参考にしてTomcat6.0を使ってスケジューラを作ろうと思っています 始めたてなのでアレンジなどはパスなどを自分に合わせるなど以外には行っていません にもかかわらず現在第2段階のカレンダーの表示の中にあるサーブレットの呼び出しができません スケジュール管理の画面とサーブレットのリンクまでは出せるのですが、いざサーブレットのリンク先へ行くとHTTP404のエラーとなってしまいます 問題になると思われるweb.xmlはWEB-INFの直下に置いているのですが何が間違っているのかが全くわからない状態です 一応これがweb.xmlの中身となっています web.xml <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <servlet> <servlet-name>MonthView</servlet-name> <servlet-class>MonthView1</servlet-class> </servlet> <servlet-mapping> <servlet-name>MonthView</servlet-name> <url-pattern>/MonthView</url-pattern> </servlet-mapping> </web-app> 他にどういう情報を出せばいいのかわからないため 他に開示してほしい情報があればどんどん聞いてください どうか皆さんの知恵をかしてください

  • クラスファイルの配置について

    初めまして。 質問したいことがあります。 私の環境は OS:RedHatLinux7.2 JDK:1.3.0_02 Tomcat:ver3.2.4 です。 servletの動作について (1)tomcat/WEB-INF/test/classes/hello.class ("HelloWorld"という文字列を表示するクラス)で  アドレス→http://localhost:8080/test/servlet/helloと入力すると正常に動 作しました。 次に (2)tomcat/WEB-INF/test/classes/sample/hello.class ("HelloWorld"という文字列を表示するクラス)で  アドレス→http://localhost:8080/test/servlet/sample/helloと入力すると Error 500 Internal Servlet Errorというエラーが発生しました。 server.xmlには <Context path="/test"    docBase="webapps/test"    crossContext="false"    debug="0"    reloadable="true" > </Context> を追加しているだけなのですが、Tomcatではクラスファイルは絶対にclassesディレクトリの直下に配置しなければならないのでしょうか? (2)のclasses-sample-hello.classというように、classesディレクトリとクラスファイルの間にディレクトリが存在すると駄目なのでしょうか? もし何かわかることがありましたらご教授御願い致します。

    • ベストアンサー
    • Java
  • jspからjarを参照したいのですが

    /usr/local/tomcat/webapps/jsp-examples/の下にあるjspから jarを参照したいのですが、上手くいきません。 /usr/local/tomcat/webapps/jsp-examples/WEB-INF/classes/testPkgの 下にそのままクラスを置けば参照できます。 クラスには次のように宣言してありますし package jalanClass; jspの先頭でパッケージをインポートしてあります。 /usr/local/tomcat/webapps/jsp-examples/WEB-INF/classes上で jar cvf testPkg.jar testPkg jar cvf testPkg.jar testPkg/* などとして作ったjarを /usr/local/tomcat/webapps/jsp-examples/WEB-INF/classesに置いたのですが、NoClassDefFound エラーとなってしまいます。 CLASSPATHに/usr/local/tomcat/webapps/jsp-examples/WEB-NF/classes を通してみましたが駄目でした。 jarは今まで使った事がないので、根本的な事が分かっていないのかも知れませんが、教えてください。 宜しくお願いします。

    • ベストアンサー
    • Java
  • Apache Tomcat/4.0.6 - HTTP Status 404

    はじめまして、初心者です。よろしくお願いします。 test.htmlを下記フォルダに置き、ブラウザから http://localhost:8080/sample/test.htmlを指定すると HTTP Status 404エラーで表示できません。 webapps  +--- sample    +---test.html    +--- WEB-INF      +--- web.xml *http://localhost:8080/は表示できます。   環境は、 win2k Apache tomcat4.0.6です。 どんな原因が考えられますでしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • Javaサーブレットを読み込んでくれません…

    現在、社内での新プロジェクトの為にJSPの研修を行っています。 開発環境 ・Windows2000 Service Pack 4 ・JDK 1.5.0_06 ・Tomcat 5.5.20 JDKとTomcatのインストールは正常に終了し、http://localhost:8080/は正常に見ることが出来ました。 その後、<Tomcat-Home>/webapps/ROOT/entryフォルダを作成し、 ・entry/WEB-INF/ ・entry/WEB-INF/classes/ 以上二つのフォルダを作成して、WEB-INFフォルダ直下にweb.xmlファイルを作成しています。 classesフォルダの中にHelloServlet.classを置き、web.xmlファイルの中身を書き換えてTomcatを再起動させてみたのですが、http://localhost:8080/entry/HelloServletとURLを打ってみても見ることが出来ません。 何か間違っているのか、設定不足なのか…教えていただければ幸いです、よろしくお願いいたします。 ************<web.xml>************ <web-app> <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/HelloServlet</url-pattern> </servlet-mapping> *********************************

    • ベストアンサー
    • Java
  • tomcatコマンドプロンプトのエラーメッセージ。

    D:\tomcat\webapps\netjv\Web-infの中にWeb.xmlを配置したところ、tomcat再起動時に下記のエラーメッセージが出てきました。意味がわかるかたお願いします。 略 ・ ・ 2003-02-08 13:37:20 - Ctx(/netjv) : Validating web.xml 2003-02-08 13:37:20 - Ctx(/netjv) : web.xml: Error org.xml.sax.SAXParseException : 要素 "servlet" ではここに "servlet-class" を指定することを許可されません。 ERROR reading D:\tomcat\webapps\netjv\WEB-INF\web.xml2003-02-08 13:37:20 - Ctx(/ netjv) : Line 9 /web-app/servlet/ 2003-02-08 13:37:20 - Ctx(/netjv) : web.xml: Error org.xml.sax.SAXParseException : 要素 "servlet" ではここに "init-param" を指定することを許可されません。 2003-02-08 13:37:20 - Ctx(/netjv) : Line 10 /web-app/servlet/ 2003-02-08 13:37:20 - Ctx(/netjv) : web.xml: Error org.xml.sax.SAXParseException : 要素 "servlet" ではここに "init-param" を指定することを許可されません。 2003-02-08 13:37:20 - Ctx(/netjv) : Line 14 /web-app/servlet/ 2003-02-08 13:37:20 - Ctx(/netjv) : web.xml: Error org.xml.sax.SAXParseException : 要素 "servlet" ではここに "init-param" を指定することを許可されません。 2003-02-08 13:37:20 - Ctx(/netjv) : Line 18 /web-app/servlet/ 2003-02-08 13:37:20 - Ctx(/netjv) : web.xml: Error org.xml.sax.SAXParseException : 要素 "servlet" には追加属性が必要です。 ・ ・ ・ 略