Tomcatの開発で迷ったら振り返りたい、Java EEの標準ディレクトリ構成
JavaでWebアプリケーションを開発するには、何よりもまず、「Java EE標準ディレクトリ構成」を学ばなければいけない。 Java EEの仕様で、WebコンテナにWebアプリケーションを配置する際は、決められたディレクトリ体系がある。
それが何もわかっていなかった頃、「Javaの道」みたいなサイトを見ながら、結局404エラーが出て「hello world」も表示できないような状況に陥っていた。 まず、ディレクトリ体系。
それがわからないと、簡単なHTMLを表示することすらできない。
tomcatで開発するときには、「webapps」というディレクトリに下に、開発する物件を格納していく。
このwebapps直下のディレクトリのことを、「コンテキストルート」という。
webapps/コンテキストルート/・・・ のように、まず、webappsの下にコンテキストルートを置く。
さらにややこしいことに、eclipseに内包されたtomcatで開発するときは、このwebapps以下のコンテキストルートの位置が、ワークスペースを見るように設定されている。
こんな風に。
<Context path="/sampleweb" reloadable="true" docBase="C:\eclipse\pleiades\eclipse\workspace_mine\sampleweb" workDir="C:\eclipse\pleiades\eclipse\workspace_mine\sampleweb\work" />
ここで、コンテキストルートの実態は「C:\eclipse\pleiades\eclipse\workspace_mine\sampleweb」にあるよ、と定義しているわけだ。
そいで、そのコンテキストルートの直下に置かなければいけないのが「WEB-INF」というディレクトリだ。 必ず、半角小文字で「WEB-INF」としなければならない。
コンテキストルート\WEB-INF以下に置くのがweb.xmlファイルで、ここにはサーブレットとURLの関連付けなどの定義を行う。
web.xmlファイルは名前も置き場所も厳密に決まっているので、注意が必要だ。 初心者はだいたいここでつまづくものだと思っている。
コンテキストルートがあって、その直下にWEB-INFがある。 WEB-INFの直下にweb.xmlを置いて、そのweb.xmlにサーブレットとURLの関連付けなどを定義する。
まずは、これだけ覚えておこう。
次は、実際にサーブレットを作ってみる。
基礎からのサーブレット/JSP 第3版 (基礎からのシリーズ)
- 作者: 宮本信二
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2010/09/01
- メディア: 大型本
- 購入: 3人 クリック: 82回
- この商品を含むブログ (12件) を見る