Hitachi

Cosminexus V11 アプリケーションサーバ システム設計ガイド


2.3.3 J2EEアプリケーションとJ2EEコンポーネント

J2EEアプリケーションは,一つ以上のJ2EEコンポーネントで構成されています。ここでは,J2EEアプリケーションとJ2EEコンポーネントについて説明します。

〈この項の構成〉

(1) J2EEアプリケーションとJ2EEコンポーネントの関係

J2EEアプリケーションは,サーブレット,JSP,Enterprise Beanなどのユーザアプリケーションプログラムで構成されています。J2EEアプリケーションは,J2EEコンテナ上で動作します。

J2EEアプリケーションを構成する,サーブレット,JSP,Enterprise BeanなどをJ2EEコンポーネントといいます。

J2EEアプリケーションとJ2EEコンポーネントの関係を次の図に示します。

図2‒3 J2EEアプリケーションとJ2EEコンポーネントとの関係

[図データ]

(2) J2EEアプリケーションの構造

J2EEアプリケーションは,3層の構造になっています。J2EEアプリケーションの構造を次の図に示します。

図2‒4 J2EEアプリケーションの構造

[図データ]

J2EEアプリケーションの最小単位は,階層3のファイル(図中,点線で囲まれたファイル)です。階層3のファイルには,クラスファイルやJSPファイルなどがあります。

そして,階層3のファイルをパッケージしたものが階層2のファイルとなります。この図の場合,階層2のEJB-JARファイルは,階層3に属するEnterprise BeanとDD(ejb-jar.xml)をパッケージしたものとなります。

さらに,階層2のそれぞれのファイルをパッケージしたものが階層1のJ2EEアプリケーションとなります。

ここでは,階層1および階層2のパッケージファイルについて説明します。なお,図中の項番は次の説明の項番と対応しています。

参考

それぞれの階層でファイル形式,およびDDのDTDが規定されています。

DDとは,アプリケーションを運用環境に配置するときの定義情報を記述したファイルを指します。EJB-JARの場合,DDはejb-jar.xml,Webアプリケーションの場合,DDはweb.xml,J2EEアプリケーションの場合,DDはapplication.xmlとなります。

なお,Enterprise Beanでアノテーションを使用する場合,ejb-jar.xmlは不要です。

(a) J2EEアプリケーション

J2EEアプリケーションは,複数の,EJB-JAR,Webアプリケーション,ライブラリJARと,一つのDD(application.xml)で構成されます。

J2EEサーバで実行できるJ2EEアプリケーションは,アーカイブ形式のJ2EEアプリケーション,および展開ディレクトリ形式のJ2EEアプリケーションです。

  • アーカイブ形式のJ2EEアプリケーション

    EJBやサーブレットなどのアプリケーションの実体をJ2EEサーバの作業ディレクトリに持つJ2EEアプリケーションです。アーカイブ形式のJ2EEアプリケーションをJ2EEサーバ内にインポートしてクライアントから実行可能な状態にするためには,EAR形式またはZIP形式へのアセンブルと,デプロイが必要です。

  • 展開ディレクトリ形式のJ2EEアプリケーション

    EJBやサーブレットなどのアプリケーションの実体を,J2EEサーバの外部にある一定のルールに従ったファイル/ディレクトリに持つJ2EEアプリケーションです。展開ディレクトリ形式のJ2EEアプリケーションをJ2EEサーバ内にインポートしてクライアントから実行可能な状態にするためには,デプロイが必要です。

参考
  • アセンブルとは,単体では動作しないEJB-JARをアプリケーションの1構成要素として位置づけるための組み立て作業のことです。アセンブルでは,EJB-JARを1構成要素として取り込んだJ2EEアプリケーションを構築します。なお,J2EEアプリケーションの構成要素として,EJB-JARのほかにWARファイル,ライブラリJARを含むことがあります。

    展開ディレクトリ形式のJ2EEアプリケーションの場合には,EAR形式またはZIP形式へのアセンブルは不要です。

  • デプロイとは,J2EEアプリケーションをクライアントから実行可能な状態にすることです。

(b) EJB-JAR

EJB-JARは,EJB-JARファイル形式でパッケージ化されています。複数のEnterprise Beanと一つのDD(ejb-jar.xml)で構成されます。なお,Enterprise Beanでアノテーションを使用している場合は,DD(ejb-jar.xml)は不要です。

(c) Webアプリケーション

Webアプリケーションは,WARファイル形式でパッケージ化されています。複数のサーブレット,JSP,HTMLと一つのDD(web.xml)で構成されます。

(d) ライブラリJAR

ライブラリJARは,JARファイル形式でパッケージ化されたものです。複数の共通ライブラリから構成されています。共通ライブラリはJ2EEアプリケーション中のJ2EEコンポーネントが共通で使用できるライブラリです。J2EEアプリケーションのDD(application.xml)の<module>タグ以下に定義されているファイル以外で,拡張子が小文字(.jar)のJARファイルがライブラリJARとみなされます。

(3) J2EEアプリケーションおよびJ2EEコンポーネントの開発

J2EEアプリケーションでアプリケーションサーバが提供する実行基盤としての機能を使用するためには,機能に応じたアプリケーションの実装が必要です。なお,アプリケーションサーバでは,J2EEアプリケーションおよびJ2EEコンポーネントを開発するための製品として,Developerを提供しています。

J2EEアプリケーションおよびJ2EEコンポーネントの開発方法については,マニュアル「アプリケーションサーバ アプリケーション開発ガイド」を参照してください。