- PR -

Eclipse上でTomcatを正常に起動できない。

1
投稿者投稿内容
matsui。
会議室デビュー日: 2003/03/27
投稿数: 6
投稿日時: 2003-03-31 16:15
こんにちは。matsui。と申します。

現在、Eclipseを使用してJavaの勉強をしています。
問題は「Tomcatを起動できない」というものです。

@ITの記事
「連載 Eclipseを使おう!(3)EclipseでTomcatを使ったJ2EE開発を行う」
(http://www.atmarkit.co.jp/fjava/rensai2/eclipse03/eclipse03.html#ap07)
を参考に同じように設定をしてみました。

また、コチラのサイトの「Tomcatプラグイン」も参考にしました。
(http://www.mobster.jp/eclipse/)

------------------

「Lombozプラグインを使用したWebアプリケーションの開発」をするために、
次の手順でTomcatおよびLombozのプラグインをインストールしました。


  1. Lombozのプラグインのダウンロード。

  2. Tomcatプラグインのダウンロード。

  3. 環境変数の設定。
    JAVA_HOMEにC:\j2sdk1.4.1_02を設定。

  4. Tomcatを下記の状態にインストール。
    C:\Program Files\Apache Group\Tomcat 4.1

  5. web.xmlの修正
    C:\Program Files\Apache Group\Tomcat 4.1\conf以下の「web.xml」を
    次のように修正。
    <init-param>
    <param-name>javaEncoding</param-name>
    <param-value>Windows-31J </param-value>
    </init-param>

  6. Lombozプラグインの設定
    「パースペクティブのカスタマイズ」からLomboz用のアイコンを表示しました。

  7. Tools.jarの場所を下記に指定しました。
    C:\j2sdk1.4.1_02\lib\tools.jar

  8. フォルダの指定
    「ソースおよび出力ロケーション」を「フォルダー」に設定しました。
    テキストボックスの中は変更していません。

  9. Tomcatの設定
    「ウィンドウ」→「設定」→左ペインで「Lomboz」を展開
    →「Application Servers」を選択→「Tomcat」タブを選択しました。
    「Tomcat」タブで以下の設定を行います。
    ・ 「Server Home Directory」
    :Tomcatのインストールディレクトリ
            (C:\Program Files\Apache Group\Tomcat 4.1)
             を指定しました。
    ・ 「Version」
    :Tomcatのバージョンで「4.1.x」を選択しました。


------------------

上記のように設定すると記事によればTomcatが無事に動作するらしいのですが、eclipseのコンソールには次のように表示されてしまいます。


コンソール内容---

Catalina.start: LifecycleException: プロトコルハンドラの初期化に失敗しました: java.net.BindException: Address already in use: JVM_Bind:8080
LifecycleException: プロトコルハンドラの初期化に失敗しました: java.net.BindException: Address already in use: JVM_Bind:8080
at org.apache.coyote.tomcat4.CoyoteConnector.initialize(CoyoteConnector.java:1119)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:579)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:2246)
at org.apache.catalina.startup.Catalina.start(Catalina.java:511)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
Catalina.stop: LifecycleException: このサーバはまだ起動されていません
LifecycleException: このサーバはまだ起動されていません
at org.apache.catalina.core.StandardServer.stop(StandardServer.java:2213)
at org.apache.catalina.startup.Catalina.start(Catalina.java:543)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)

---------

記事が長くなってしまい申し訳ありません。

このメッセージを読んでも、「無事に動いていない」ぐらいにしか、当方の知識不足により原因が何なのか理解ができませんでした。
どうかよろしくご教授いただきたいと思います。

[ メッセージ編集済み 編集者: matsui。 編集日時 2003-03-31 17:18 ]

[ メッセージ編集済み 編集者: matsui。 編集日時 2003-04-01 09:01 ]
sutou
会議室デビュー日: 2002/02/20
投稿数: 7
投稿日時: 2003-03-31 18:15
 以下のところが気になります。ポート8080が、
他のプログラム(たぶんWebサーバ)によって、
すでに使用されているのではないでしょうか。

> java.net.BindException: Address already in use: JVM_Bind:8080
lhrsyd
会議室デビュー日: 2003/04/09
投稿数: 1
投稿日時: 2003-05-27 11:08
自分も同じ現象で調べていたところこの記事をみつけました。
http://www.ajug.org/archive/ajug-members/10209/msg00005.html

TomcatをNTのサービスとして登録していると発生するようです。
@koto
会議室デビュー日: 2001/08/17
投稿数: 17
投稿日時: 2003-07-10 18:35
すいません。私も同じような現象で困っているので便乗質問させてください。

[環境]
Tomcat4.1
Windows2000 sp4
eclipse2.1
lomboz 2.1_02
他の環境はmatsuiさんとほぼ同じです。

私の場合Tomcatを単体で動作させる分には正常に動作しますので
ポートが埋まっている事は無いと思われます。
同じような現象を確認された方などいましたら
ご鞭撻宜しくお願いいたします。

-------
2003/07/10 18:31:00 org.apache.commons.modeler.Registry loadRegistry
情報: Loading registry information
2003/07/10 18:31:00 org.apache.commons.modeler.Registry getRegistry
情報: Creating new Registry instance
2003/07/10 18:31:00 org.apache.commons.modeler.Registry getServer
情報: Creating MBeanServer
2003/07/10 18:31:01 org.apache.coyote.http11.Http11Protocol init
致命的: エンドポイントを初期化中のエラーです
java.net.SocketException: Invalid option
at java.net.PlainSocketImpl.socketSetOption(Native Method)
at java.net.PlainSocketImpl.setOption(PlainSocketImpl.java:240)
at java.net.ServerSocket.setSoTimeout(ServerSocket.java:555)
at org.apache.tomcat.util.net.PoolTcpEndpoint.initEndpoint(PoolTcpEndpoint.java:284)
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:150)
at org.apache.coyote.tomcat4.CoyoteConnector.initialize(CoyoteConnector.java:1117)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:579)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:2246)
at org.apache.catalina.startup.Catalina.start(Catalina.java:511)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
Catalina.start: LifecycleException: プロトコルハンドラの初期化に失敗しました: java.net.SocketException: Invalid option
LifecycleException: プロトコルハンドラの初期化に失敗しました: java.net.SocketException: Invalid option
at org.apache.coyote.tomcat4.CoyoteConnector.initialize(CoyoteConnector.java:1119)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:579)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:2246)
at org.apache.catalina.startup.Catalina.start(Catalina.java:511)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
Catalina.stop: LifecycleException: このサーバはまだ起動されていません
LifecycleException: このサーバはまだ起動されていません
at org.apache.catalina.core.StandardServer.stop(StandardServer.java:2213)
at org.apache.catalina.startup.Catalina.start(Catalina.java:543)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
papyrus
会議室デビュー日: 2003/07/11
投稿数: 1
投稿日時: 2003-07-11 01:05
windowsコンポーネントのIISがインストールされていませんか?
私はこれをuninstallしたら動くようになりました。


ティノ
会議室デビュー日: 2003/07/11
投稿数: 12
投稿日時: 2003-07-17 17:28
ところで、この問題は解決しているのでしょうか?

実は、同じ問題で、悩んでおります。。

会議室デビュー日: 2003/07/17
投稿数: 1
投稿日時: 2003-07-17 18:15
 Port8080が既に占有されている問題について、
いろいろな原因で発生しました。
 今回の問題解決になるかどうか判りませんが、
私が遭遇したトラブル原因について記述いたします。

 ちなみに、TOMCATPlugInを使用しています。

・すでにTomcatが立ち上がっていた。
 サービスや、スタートアップ等にTomcatが登録されていて
すでに起動中でした。

・1回目はEclipseから起動したのに2回目起動しない。
 Eclipse上にて、TOMCATが正しく停止しない場合があるようです。
もう一度TOMCAT停止し、再起動することにより立ち上がる事が
多いです。立ち上がらない場合はEclipseを再起動しました。

・Oracle9iが入っている。
 Oracle9iを導入するときにXDBを有効にするとPort8080を占有
します。XDBを無効にするか、TOMCAT側のPortを変更する必要が
あります。

一番最後のOracle9iとのバッティングが原因調査に一番手間取り
ました...結局Port8080を使用しているサービスを突き止める
しかないということでした。

以上ご参考になれば。
ティノ
会議室デビュー日: 2003/07/11
投稿数: 12
投稿日時: 2003-07-17 18:35
早速のレス、ありがとうございます。

私もいろいろと試したのですが、既にTOMCATが立ち上がっていた事象
については、コントロールパネル→管理ツール→サービスで、TOMCAT
のプロパティより、サービスを自動から手動に切り替えて対応しました。

これで、問題なく、起動できるようになりました。

私は、素人なので試行錯誤の毎日です。苦笑。





1

スキルアップ/キャリアアップ(JOB@IT)