Webアプリケーションのパッケージングを「やり直す」:やり直し「JSPとTomcat」(12)(2/2 ページ)
Javaを途中までかじったが挫折した。やはりJavaプログラマにスキルチェンジしたい! という読者のために、Tomcatの最新バージョンを使いながらJSPを基礎から解説していく(編集部)
web.xmlの書き方を確認しよう!
さて、WEB-INFディレクトリの直下には、設定ファイルweb.xmlを配置する決まりになっています。同ファイルはDD(Deployment Descriptor)ファイルとも呼ばれ、主に以下の設定情報をWebコンテナに伝える役割を担います。
- サーブレットやJSPページへのURL割り当て
- エラー・ページ指定
- 初期化パラメータ指定
- ウェルカム・ファイル指定
- セキュリティ保護
- EJBコンポーネントや各種リソース参照設定
URL割り当て
以下の例では、サーブレットTestServletにURLを割り当てています。
<?xml version="1.0"?> <web-app> <servlet> <servlet-name>TestServlet</servlet-name> <servlet-class>sample.TestServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>TestServlet</servlet-name> <url-pattern>/test</url-pattern> </servlet-mapping> </web-app>
ここでは、サーブレット・クラスsample.TestServletに対して、/testというURLを割り当てています。よってWebブラウザからは、以下のURLでアクセス可能になります。
http://<ホスト名>/<Webアプリケーションのパス>/test
エラー・ページ指定
また、以下のように記述することで、特定のHTTPステータスコードや例外が発生した場合に表示するエラー・ページを指定できます。
<error-page> <error-code>404</error-code> <location>/error.jsp</location> </error-page> <error-page> <exception-type>java.lang.Throwable</exception-type> <location>/error.jsp</location> </error-page>
そのほかの設定
そのほか、web.xmlを利用した初期化パラメータ指定やセキュリティ設定については、サーブレット仕様に詳しく記載されています。
WARファイルへのパッケージング
Java EEのWebアプリケーションは、以上のようなディレクトリ構成でまとめておくことで、TomcatをはじめさまざまなJava EEサーバ製品に簡単に配置して動作させることができます。
さらに、Webアプリケーションのディレクトリ全体をJARファイルに圧縮し、拡張子を「.war」とすることで、「WAR(Web ARchive)ファイル」と呼ばれるファイル形式にまとめられます。
例えば、Webアプリケーションの成果物すべてを「foo.war」という1つのWARファイルに収めておけば、同ファイルをTomcatのwebappsディレクトリにコピーするだけで、Tomcatがそれを自動展開してWebアプリケーション「foo」の動作を開始します。
パッケージング&デプロイ
Java EEでは、このようなWARファイルの作成とWebコンテナへの配置を、それぞれ「パッケージング」と「デプロイ」と呼びます。このパッケージング&デプロイの仕組みによって、Webアプリケーションのポータビリティが高まり、特定のWebコンテナへの依存度を抑えることが可能です。
ちなみに実際の開発では、ソースコードのコンパイルからWARファイルのパッケージング、そしてWebコンテナへのデプロイまでの一連の作業を、「Ant」などのビルドツールで自動化する方法が一般的です。
以上、今回はJava EEにおけるWebアプリケーションのパッケージング方法を紹介しました。本連載はこれにて終了となりますが、これまでご愛読いただきありがとうございました。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 第1回 サーブレット/JSPの役割を理解する
- 第2回 サーブレット/JSPをほかの言語と比較する
- 第3回 サーブレット/JSPの開発環境を作る
- 第4回 JSPの基本構文を理解する
- 第5回 JSPの基本「暗黙オブジェクト」を使う
- 第6回 JSPの基本「暗黙オブジェクト」をさらに極める
- 第7回 Javaのクラスライブラリを攻略「基本クラス編」
- 第8回 Javaのクラスライブラリを攻略「ユーティリティ編」
- 第9回 Javaでファイルや画像を扱う
- 第10回 クラスライブラリを攻略「データベース編」
- 第11回 JSPとサーブレットの違いを明らかにする
- 第12回 JavaBeansのルールを知る
- 第13回 JavaBeansをサーブレット/JSPから利用する
- 第1回 JSPの特徴を理解する
- 第2回 JSPの実行環境を整える
- 第3回 JSPプログラミングの基本を覚える
- 第4回 Webプログラミングの前提知識をおさえる
- 第5回 インクルードによるコードの再利用で効率化をはかる
- 第6回 クラスやBeanの作成とJSPとの連携
- 第7回 JSPでセッションを扱うための基礎知識
- 第8回 JSPプログラムからクッキーを扱う
- 第9回 JSPから別のファイルにアクセスする
- 第10回 JSPからデータベースに接続する
- 第11回 データベースを活用したアプリケーション