Cosminexus 機能解説

[目次][用語][索引][前へ][次へ]

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

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

<この項の構成>
(1) J2EEアプリケーションとJ2EEコンポーネントの関係
(2) J2EEアプリケーションの構造
(3) J2EEアプリケーションおよびJ2EEコンポーネントの開発

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

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

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

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

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

[図データ]

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

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

図1-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アプリケーションです。

(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アプリケーションでApplication Serverが提供する実行基盤としての機能を使用するためには,機能に応じたアプリケーションの実装が必要です。なお,Cosminexusでは,J2EEアプリケーションおよびJ2EEコンポーネントを開発するための製品として,Developerを提供しています。

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