Hitachi

Cosminexus V11 アプリケーションサーバ アプリケーション開発ガイド


付録L.2 アプリケーションディレクトリの作成(展開ディレクトリ)

Developerが提供するプラグインを使用しないで展開ディレクトリ形式のJ2EEアプリケーションを開発する場合,最初にアプリケーションディレクトリを作成します。詳細は,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「18.4.2 アプリケーションディレクトリの構成」を参照してください。

作成するアプリケーションディレクトリの構成例を,次の図に示します。

図L‒3 アプリケーションディレクトリの構成例

[図データ]

アプリケーションディレクトリ名は任意です。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/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.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に対応するアプリケーションディレクトリの構成を,次に示します。

図L‒4 アプリケーションディレクトリの構成

[図データ]

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コマンドで取得したスタブおよびインタフェースを置かないでください。