Developerが提供するプラグインを使用しないで展開ディレクトリ形式のJ2EEアプリケーションを開発する場合,最初にアプリケーションディレクトリを作成します。
作成するアプリケーションディレクトリの構成例を,次の図に示します。
図9-3 アプリケーションディレクトリの構成例
![[図データ]](figure/zu100300.gif)
アプリケーションディレクトリ名は任意です。EJB-JARディレクトリとWARディレクトリは,アプリケーションディレクトリの直下に作成する必要はありません。
EJB-JARディレクトリおよびWARディレクトリは,それぞれapplication.xmlの<module>タグ以下に指定して作成します。application.xmlの記述例を次に示します。
<?xml version="1.0" encoding="UTF-8" ?>
<application xmlns="http://java.sun.com/xml/ns/j2ee"
version="1.4"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/application_1_4.xsd"> <display-name>converter</display-name>
<module>
<ejb>subdir/converter.jar</ejb>
</module>
<module>
<web>
<web-uri>MyWebApp.war</web-uri>
<context-root>/</context-root>
</web>
</module>
</application> |
このapplication.xmlに対応するアプリケーションディレクトリの構成を,次に示します。
図9-4 アプリケーションディレクトリの構成
![[図データ]](figure/zu100400.gif)
- application.xmlの定義内容とアプリケーションディレクトリの対応
- EJB-JARディレクトリおよびWARディレクトリは,それぞれ<module>タグ以下に指定したEARファイル上の相対パスに作成します。
- <module>タグ以下に定義するEJB-JARおよびWARのモジュールは,拡張子(.jarまたは.war)を付けて宣言します。
- 作成されるEJB-JARディレクトリおよびWARディレクトリの名称は,拡張子(.jarまたは.war)を取り除いた名称となります。
- アプリケーションディレクトリ以下に置かれている拡張子が小文字のJARファイル(.jar)のうち,<module>タグ以下に定義していないJARファイルは,ライブラリJARとして扱われます。
- 注意
- アプリケーションディレクトリとしてUNCパスは指定できません。指定した場合は,サーバ管理コマンドでインポートするときにエラーとなります。
- J2EEサーバ起動処理中やサーバ管理コマンド実行中に,アプリケーションディレクトリ以下のファイルおよびディレクトリを追加,削除,上書きしないでください。
- application.xmlに<alt-dd>タグが指定されているJ2EEアプリケーションは,展開ディレクトリ形式で使用できません。展開ディレクトリ形式のJ2EEアプリケーションをインポートする場合に,J2EEアプリケーションのapplication.xmlに<alt-dd>タグが指定されているときは,コマンド実行時にエラーとなります。
- <module>タグ以下に定義するEJB-JARおよびWARのモジュールで,異なる拡張子を付けた場合,J2EEアプリケーションのインポートに失敗します。
- アプリケーションディレクトリ以下にJavaソースファイルを置くような構成は推奨しません。同じディレクトリに置かれているクラスファイルとJavaソースファイルの同期が取れていない場合,J2EEアプリケーションの開始やリロードに失敗する場合があります。
- 半角記号「!」「#」「%」「+」はエスケープ文字として扱われるため,アプリケーションディレクトリ名およびモジュール名に指定しないでください。
- アプリケーションディレクトリ以下に置かれているJARファイルはライブラリJARとして扱われるため,アプリケーションディレクトリ以下には,cjgetstubsjarコマンドで取得したスタブおよびインタフェースを置かないでください。