プロが教える店舗&オフィスのセキュリティ対策術

eclipseで新規Tomcatプロジェクトを作成する際に、最終画面で

・コンテキスト名(デフォルト値:プロジェクト名)
・Webアプリケーション・ルートとするサブディレクトリー(オプション)(デフォルト値:/)

を設定する処があるのですが、ここの使い方がよく分りません。ためしに、

・コンテキスト名:test01(プロジェクト名)
・Webアプリケーション・ルートとするサブディレクトリー:test01Sub01

と指定してやると、確かに test01 の下に test01Sub01 というサブディレクトリが作成されるのですが、Webアプリケーション・ルートであるはずの test01Sub01 の下に index.html を作成してみても、

localhost:8080/test01Sub01/index.html(Webアプリケーション・ルート下のindex.html)

ではアクセスできません。

localhost:8080/test01/index.html(コンテキスト名下のindex.html)

ではアクセスできます。

Webアプリケーション・ルートの設定を、どのように取り扱えばよいのか、分る方お教えください。

また、
「コンテキスト・ルート」と「Webアプリケーション・ルート」の違い(があればそれ)について、お教えください。

以上、よろしくお願いします。

A 回答 (6件)

>>http://ドメイン/アプリケーション/jsp/index.jsp  ←(A)


>>とするところを
>>http://ドメイン/アプリケーション/index.jsp    ←(B)
>>とアクセスできるようになるわ。
>
>(A)も(B)も大して変らないように思えるのですが?

世の中そういうものは多いわね。
でも、必要な人もいるのよ。

プロジェクトルート/jsp/index.jsp
に格納した例を挙げたけど
もしかしたら
プロジェクトルート/html/index.jsp
プロジェクトルート/doc/index.jsp
プロジェクトルート/www/index.jsp
とかかもしれないし、プロジェクト工程ごとに
プロジェクトルート/pt/index.jsp
プロジェクトルート/it/index.jsp
プロジェクトルート/st/index.jsp
なんてやっているかもしれない。
その場合、毎回呼び出すURLを変えるのではなく
Webアプリケーション・ルートを変えれば一箇所変えるだけですむ
という利点はあるわ。

単にURLがちょっとでも短いほうがいい
という要求があるのかもしれないけど。
    • good
    • 1

そうね


プロジェクト
という表現は正しくなかったわ。

好きな場所にJSPを置けるから

というべきだったわね。
これを指定しない状態だと
JSPのルートはプロジェクトのルートになるわ。

http://ドメイン/アプリケーション/index.jsp
を指定した場合、未指定の場合index.jspはプロジェクトルートに置くことになるけど
Webアプリケーション・ルートにを指定しておくとindex.jspはそっちに置くことになるわ。

たとえばindex.jspの置き場を
プロジェクトルート/jsp/index.jsp
にしておいた場合、通常だと
http://ドメイン/アプリケーション/jsp/index.jsp
とするところを
http://ドメイン/アプリケーション/index.jsp
とアクセスできるようになるわ。

この回答への補足

仰ってる事が理解できました。ただ、

>http://ドメイン/アプリケーション/jsp/index.jsp  ←(A)
>とするところを
>http://ドメイン/アプリケーション/index.jsp    ←(B)
>とアクセスできるようになるわ。

(A)も(B)も大して変らないように思えるのですが?

補足日時:2010/05/12 23:00
    • good
    • 0

Webアプリケーション・ルートとするサブディレクトリー


は1つしか指定できないわよ。

この回答への補足

論点を明確にするため、内容を単純化した質問を、再度記載いたします。


質問内容:

新規プロジェクト作成の最終画面の

(1)コンテキスト名(デフォルト値:プロジェクト名)
(2)Webアプリケーション・ルートとするサブディレクトリー(オプション)(デフォルト値:/)

の設定において、(1)をデフォルト値(=プロジェクト名)のままにしたとき、

(2)の設定を、デフォルト値(/)以外のものを指定できるようにする意義

について、お教えください。


なお、Eclipseにおいて、新規作成した「プロジェクト」の中に、新たに別の「プロジェクト」を作成することはできませんので、

>好きなところにプロジェクトを置けるから。

以外の内容のご回答をお願いします。

補足日時:2010/05/11 20:09
    • good
    • 0

好きなところにプロジェクトを置けるから。



これじゃダメかしら?

この回答への補足

・コンテキスト名:test01(プロジェクト名)
・Webアプリケーション・ルートとするサブディレクトリー:test01Sub01

と指定してやると、確かに test01 の下に test01Sub01 というサブディレクトリが作成されるのですが、Webアプリケーション・ルートであるはずの test01Sub01 の下に index.html を作成してみても、

localhost:8080/test01Sub01/index.html(Webアプリケーション・ルート下のindex.html)

ではアクセスできません。

localhost:8080/test01/index.html(コンテキスト名下のindex.html)

ではアクセスできます。


つまり、

・Webアプリケーション・ルートとするサブディレクトリー:test01Sub01
・Webアプリケーション・ルートとするサブディレクトリー:test01Sub02
・Webアプリケーション・ルートとするサブディレクトリー:test01Sub03
・Webアプリケーション・ルートとするサブディレクトリー:test01Sub04

というふうに、サブディレクトリを複数作成し、それぞれのディレクトリの下に、内容が異なる

index.html

ファイルを作成しても、それらのindex.htmlファイルにアクセスできるurlは、

localhost:8080/test01/index.html

一つなので、おかしな事になってしまうのではないでしょうか?

補足日時:2010/05/10 18:58
    • good
    • 0

> 上記の画面は二度と出てこない訳です


プロジェクトのプロパティの中に
Tomcatの項目があるわ。
そこで設定しなおせるわよ。
もしはいっていない場合、
Tomcatプラグインがおかしいわね。

> 存在価値
コンテキスト名
 ・プロジェクト名と無関係にコンテキスト名(サブディレクトリ可能)をつけられる
ルートディレクトリ
 ・デフォルトだとプロジェクトのルートがコンテキストルートになるが
  これと指定することでそれを変えることができる。
  jsp置き場を/projectroot/jsproot
  とした時に、デフォルトだとhttp://localhost:8080/context/jsproot/~.jspになるが
  ルートディレクトリに/projectroot/jsprootを指定すると
  http://localhost:8080/context/~.jspでアクセスできる

こんな感じね。

この回答への補足

ご回答ありがとうございます。
しばらく考えてみましたが、やはり分らないので再度質問いたします。

論点を明確にするため、質問の内容を単純化します。


質問内容:

新規プロジェクト作成の最終画面の

(1)コンテキスト名(デフォルト値:プロジェクト名)
(2)Webアプリケーション・ルートとするサブディレクトリー(オプション)(デフォルト値:/)

の設定において、(1)をデフォルト値(=プロジェクト名)のままにしたとき、

(2)の設定を、デフォルト値(/)以外のものを指定できるようにする意義

について、お教えください。

補足日時:2010/05/09 12:59
    • good
    • 0

あなたが体験した通りのものよ。



Webアプリケーションへのアクセスは

http://ドメイン:ポート/コンテキスト名/~

で行うの。
コンテキスト名はコンテキストパスとかアプリケーション名とかとも呼んだりするわね。

あなたはコンテキスト名をtest01にしたから
http://localhost:8080/test01/index.html
になったのよ。

Webアプリケーション・ルートとするサブディレクトリー
は単に物理的なプロジェクトの格納場所よ。
好きな場所を指定できるわ。

この回答への補足

ご回答ありがとうございます。
新規プロジェクト作成の最終画面で、

(1)コンテキスト名(デフォルト値:プロジェクト名)
(2)Webアプリケーション・ルートとするサブディレクトリー(オプション)(デフォルト値:/)

の設定をデフォルト値から変更できるようになっている訳ですが、この設定変更機能が何の役に立つのかが分らないのです。

Eclipseは触り出したばかりでよく分らないのですが、「プロジェクト」はいったん作成したら、上記の画面は二度と出てこない訳です。

一方、上記の画面設定値をデフォルト値のままにして、いったん「プロジェクト」を作成したあとに、同じ「プロジェクト」の中に、異なるプログラムを構成するための、色々なフォルダやファイルやパッケージやクラスを作ることが出来る訳で、上記の設定画面の存在価値がどこにあるのかが、分らないでいます。

補足日時:2010/05/06 20:40
    • good
    • 0

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