- - PR -
tomcat起動失敗の理由
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-07-21 21:21
はじめまして。
只今、JSP、サーブレットの開発に携わっている者です。 本日tomcatを再インストールしたら 起動ができなくなってしまいました。 コマンドプロンプトにて"startup"とたたいても 画面がすぐに消えてしまい、エラーの原因がわからなかったので、 開発に使っているeclipseの方から起動したところ、 Exception during startup processing java.lang.reflect.InvocationTargetException: java.lang.NoClassDefFoundError: org/xml/sax/HandlerBase at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:488) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:106) at java.net.URLClassLoader.defineClass(URLClassLoader.java:243) at java.net.URLClassLoader.access$100(URLClassLoader.java:51) at java.net.URLClassLoader$1.run(URLClassLoader.java:190) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:183) at org.apache.catalina.loader.StandardClassLoader.findClass(StandardClassLoader.java:674) at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:1093) at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:992) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:310) at org.apache.catalina.startup.Catalina.createStartMapper(Catalina.java:280) at org.apache.catalina.startup.Catalina.start(Catalina.java:722) at org.apache.catalina.startup.Catalina.execute(Catalina.java:681) at org.apache.catalina.startup.Catalina.process(Catalina.java:179) at java.lang.reflect.Method.invoke(Native Method) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243) といった例外が発生していることが分かりました。 そこで%TOMCAT_HOME%\libにxerces.jarを入れて再起動してみたのですが、 結果は変わりませんでした。 上記のような例外が発生した場合は、xerces.jarの他にも ライブラリが必要なのでしょうか? どなたかご教授願います。 環境 OS:windows2000pro tomcat:Apache Tomcat 4.0.6 |
|
投稿日時: 2003-07-21 22:23
Java2sdkが1.4.xなら、org.xml.sax.HandlerBaseクラスは標準で
入ってるはずですが。 1.3.xって事はないですよね? |
|
投稿日時: 2003-07-21 22:47
御返事ありがとうございます。
JDKのバージョンを記述し忘れていました。 開発規約で1.3.1とされているので tomcatインストール時もJAVA_HOMEは1.3.1を設定しました。 再インストールする前は、正常に動作していたのですが・・・。 そもそも再インストールしたのは Oracle9iをインストールした後、tomcatが起動できなくなっていたことに 気づいたためです。 ですがそのときの例外はBindExceptionであったので server.xmlにて設定してある8080ポートを他のポートに変更すれば 良かったのですが。 Oracle9iインストール -> tomcat起動時BindException発生 -> tomcat再インストール -> 先のエラー(NoClassDefFoundError: org/xml/sax/HandlerBase) といった流れで面倒なことになってしまいました。 こういった状況はもうどうしようもないのでしょうか? |
|
投稿日時: 2003-07-21 23:32
問題がこの例外だけなら、小さな間違いと思われます。
適解ではないかもしれませんが、試しに標準拡張のパッケージを 入れるディレクトリに xerces.jarを入れて見てみてください。 j2sdkをインストールしたディレクトリの下の jre\lib\extと Program Files\Java\j2re1.3.1\lib\extの両方にです。 もしこれで例外が無くなる(または別のものになる)ようなら、 %TOMCAT_HOME%が間違えてるとか、そのあたりかも知れません。 (自信のない説明で、助言になってないかもしれませんが。) |
|
投稿日時: 2003-07-22 13:47
%TOMCAT_HOME%\common\lib下を確認したところ、
妙にjarファイルが少ないことに気づき、 同僚が持っていたインストーラで再度インストールしてみました。 ・・・その後、問題なく起動いたしました。 同じサイトからダウンロードしてきたものだと思うのですが、 そういった違いってあるものなんでしょうかね? お騒がせいたしました。 ご丁寧なご返信、ありがとうございました。 |
|
投稿日時: 2003-07-22 17:38
common\lib以下のjarファイルが少ないとのことですが、
jakarta-tomcat-4.0.6-LE-jdk14.exe をダウンロードしたのではないでしょうか。 こちらはSAX周りのライブラリを含まないアーカイブで、 それらを標準で持っているJ2SE-1.4以降用です。 |
|
投稿日時: 2003-07-23 08:31
TOMCAT4.0ではTOMCAT_HOMEではなくCATALINA_HOMEというパスになっているはずです。
CATALINA_HOMEが設定されていないのではないでしょうか? |
1