現在、javaのservletの勉強をしているのですが、
1つ疑問があります。

現在、サーバのtomcat + apacheを起動して、

http://<サーバのホスト名>:8080/

でアクセスしたら、tomcatのindex.html

を起動するようになっているのを、自分が作ったservletを起動する
ように変更したいのですが、このようなことはできるのでしょうか。

よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

残念ながらできません。



そこで、このような方法はいかがでしょうか?

ドキュメントルートのindex.htmlに下記のMETAタグを
挿入し、index.htmlがロードされた直後にServletを
呼び出す仕組みにしてはいかがでしょうか?

<META HTTP-EQUIV="refresh" CONTENT="0; URL="出力したいServlet">

index.htmlとしては、ブラウザ上に何も出力しないように
しておけば、自然だとおもいますよ。
    • good
    • 0
この回答へのお礼

ありがとうございました。

思う通りの動作を行う事ができました。

apache + tomcatの設定ばかり調べていたので、
無理かなと思っていたのですが、少し視点を変えれば
解決方法がある事が分かり、良い勉強になりました。

お礼日時:2001/09/19 09:49

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

このQ&Aと関連する良く見られている質問

QTomcat5.5でhttp://localhost:8080/myApp/でディレクトリ一覧が表示されない。

はじめまして。javaの初心者です。先ほども
Tomcat5.5の設定についての質問をさせていただいた
のですが、質問の回答者様のご返事を待たずに改めて
質問をさせていただくのは、申し訳ございません。
現在jdk1.5.0_06とTomcat 5.5.17をインストール
していまして、Tomcatの設定で苦戦しております。
http://localhost:8080/myApp/を入力すると
「HTTPステータス 404 - /myApp/」と表示されて
ディレクトリ一覧が表示されないのに
http://localhost:8080/myApp/test.htmlや
http://localhost:8080/myApp/testでサーブレット
が表示される状態になっています。おそらく
コンテキストの設定が問題になっていると思うのです
がどのようにしたら解決するのがわかりません。
どうか教えてください。お願いします。

Aベストアンサー

%CATALINA_HOME%\conf\web.xml

に以下の記述があると思います。
そのパラメータに「listings」というのがあります。
これがtrueであれば一覧は表示されfalseであれば表示されません。
ココをもう一度確認してみてください。

<servlet>
<servlet-name>default</servlet-name>
<servlet-class>
org.apache.catalina.servlets.DefaultServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

%CATALINA_HOME%\conf\web.xml

に以下の記述があると思います。
そのパラメータに「listings」というのがあります。
これがtrueであれば一覧は表示されfalseであれば表示されません。
ココをもう一度確認してみてください。

<servlet>
<servlet-name>default</servlet-name>
<servlet-class>
org.apache.catalina.servlets.DefaultServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0<...続きを読む

QTomcat起動時にServletの起動

tomcatを起動時に、あるServletを起動したいと思います。
どこかの設定ファイルに記述すれば、そのようなことは可能でしょうか?
可能な場合、簡単な手順等も教えていただければ、助かります。

Aベストアンサー

web.xml内の<servlet>タグ内に
<load-on-startup>タグを追加することで
サーバ起動時に実行する手順もあります。

<servlet>
<servlet-name>xxx</servlet-name>
<servlet-class>起動したいクラス名</servlet-class>
<load-on-startup/>
</servlet>

#servlet-nameは適当につけてください

この場合、<load-on-startup>は空ですが、
起動したいクラスが複数ある場合、
このタグに正数を与えて順序づけすると
起動の順番をつけることができると思います。

Qapache + tomcat でtomcatが起動しません。

既出の質問であれば申し訳ありません。

apacheサーバをインストールした後、tomcat6.0をインストールしました。インストール時は正常に動作するのですが、tomcatを再起動すると

「ローカルコンピュータ上のApache Tomcatサービスは起動して停止いたしました。パフォーマンスログ、警告サービスなど、一部のサービスは作業がない場合に自動停止します。」

というメッセージが表示されて起動されません。
windowsXP(Home Edition)を再起動すると右下にアイコンも出ていないようです。以前は動いていたのですが。。。
何かアドバイスがございましたらお願いいたします。

Aベストアンサー

Tomcatはデフォルト8080のポートを使用しています、まずコマンドプロンプトで netstat コマンドで8080のポートをしようしているかどうかを確認してください。

Qtomcat起動時にservletを実行

tomcat起動時にある処理がしたいと思っています。

過去に同じ様な質問があり、

<servlet>タグ内に
<load-on-startup>タグを追加することで可能だと
分かったのですが、うまくいきません。

eclipseでのtomcatの起動だからという事はありえるでしょうか?

また、strutsを使っているのも関係しているのでしょうか?

稚拙な質問で申し訳ありませんが、教えていただけるとありがたいです。

Aベストアンサー

このページの検索用のテキストフィールドに
<load-on-startup>
と入力して
「ウェブ」
で検索したら何件かヒットしました。

1番上にヒットしたサイト(参考URL)にやり方が過去の質問よりはもう少し詳しく書いてあります。

<load-on-startup>タグを追加されたサーブレットは
Tomcat起動時に「ロード」されるだけです。
「ロード」されたときに呼び出されるinit()にやりたい処理を記述しておけば起動時に処理されます。

ですので、質問者さんのサーブレットにinit()を実装していなければ実装してやりたい処理を記述して、既に実装してあればやりたい処理を追記してあげればいいと思います。

参考URL:http://www.hellohiro.com/servletwebxml.htm

QTomcatは起動しますが初期index画面が表示できません

Tomcatについての質問は多数寄せられておりますが、
それらを参考にしてインストールなど行いますが、
どうしても後一歩のところで私の場合表示できないという、もどかしい状態になっております。
どうかご存知の方いらっしゃいましたらご教示お願い申し上げます。

Tomcat5.0をWindowsXPで起動しております。
Javaはj2sdk1.4.1_02です。
通常インストールした後Startup.batを起動し、IE6.0で
http://localhost:8080もしくは
http://127.0.0.1:8080と入力、Enterキーを押しますが、画面に
Connection refused
--------------------
Description: Connection refused
と表示されてしまいます。

下記に参考になるかわかりませんが、各種起動状態を記載いたします。アドバイスよろしくお願い申し上げます。

◆コマンドプロンプトで
>ping localhostと入力すると、
-----
Pinging yamamoto [127.0.0.1] with 32 bytes of data:

Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128

Ping statistics for 127.0.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
-----

と表示されます。また、
>telnet localhost 8080の場合は
-----
接続中: localhost...ホストへ接続できませんでした。 ポート番号 8080: 接続に失敗し
ました
-----
と表示されます。

お手数ですが、よろしくお願い申し上げます。

Tomcatについての質問は多数寄せられておりますが、
それらを参考にしてインストールなど行いますが、
どうしても後一歩のところで私の場合表示できないという、もどかしい状態になっております。
どうかご存知の方いらっしゃいましたらご教示お願い申し上げます。

Tomcat5.0をWindowsXPで起動しております。
Javaはj2sdk1.4.1_02です。
通常インストールした後Startup.batを起動し、IE6.0で
http://localhost:8080もしくは
http://127.0.0.1:8080と入力、Enterキーを押しますが、画面に
Connection re...続きを読む

Aベストアンサー

>Tomcatは起動しますが
とのことですが、Tomcatが起動していないと思います。

pingが通るのはTomcatと無関係で、PCが立ち上がっていれば帰ってくると思います。

telnet localhost 8080
で接続できないとのことなので、Tomcatが起動できていないのではないでしょうか?


人気Q&Aランキング

おすすめ情報