Hitachi

Cosminexus V11 アプリケーションサーバ リファレンス 定義編(アプリケーション/リソース定義)


3.3.1 EJB-JAR属性ファイルの指定内容

EJB-JAR属性ファイルは,次に示すDOCTYPE宣言を持ちます。

<!DOCTYPE hitachi-ejb-jar-property PUBLIC '-//Hitachi, Ltd.//DTD Ejb Jar Property 9.0//EN' 'file:///<Application Serverのインストールディレクトリ>/CC/admin/dtds/hitachi-ejb-jar-property_9_0.dtd'>

EJB-JAR属性ファイルは,次に示すタグを持つxmlファイルです。

なお,設定先のEJB-JARがDD(ejb-jar.xml)を保持していない場合,EJB-JAR属性ファイルのタグは変更できません。また,属性ファイルのバージョンは,以前のバージョンのものでも使用できます。

〈この項の構成〉

(1) ejb-jar.xmlを含む場合

タグ名

出現パターン

説明

<hitachi-ejb-jar-property>

1回

ルートタグ。

<description>※1

0回以上※2

EJB-JARの説明。※3

<display-name>※1

1回以上※2

EJB-JARの表示名。※3

1≦文字列長

変更する場合,英数字(0〜9,A〜Z,a〜z),および次の特殊文字を使用できます。

プラス(+),ハイフン(-),ピリオド(.),キャレット(^),アンダースコア(_)

<icon>※1

0回以上※2

GUIツール上に表示されるEJB-JARのアイコンの定義。※3

<small-icon>

0または1回

スモールアイコン(16×16)のファイル名。※3

<large-icon>

0または1回

ラージアイコン(32×32)のファイル名。※3

<interceptors>

0または1回

インターセプタの設定。※4

<description>※1

0回以上※2

Interceptorsの説明。※4

<interceptor>

1回以上

インターセプタクラスの設定。※4

<description>※1

0回以上※2

interceptor-classの説明。※4

<interceptor-class>

1回

インターセプタクラスの名称。※4

<around-invoke>

0回以上

インターセプタのaroundinvokeメソッドの定義。※4

<class>

0または1回

インターセプタのaroundinvokeメソッドが存在するクラスをパッケージ名から表示。※4

<method-name>

1回

インターセプタのaroundinvokeメソッドの名称。※4

<post-construct>

0回以上

インターセプタのpost-constructメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpost-constructメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpost-constructメソッド名を表示。※4

<pre-destroy>

0回以上

インターセプタのpre-destroyメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpre-destroyメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpre-destroyメソッド名を表示。※4

<post-activate>

0回以上

インターセプタのpost-activateメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpost-activateメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpost-activateメソッド名を表示。※4

<pre-passivate>

0回以上

インターセプタのpre-passivateメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpre-passivateメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpre-passivateメソッド名を表示。※4

<relationships>

0または1回

リレーションシップについての定義。

EJB2.1以前の場合に設定できます。EJB3.0以降の場合は設定できません。※3

<description>※1

0回以上※2

relationshipsの説明。※3

<ejb-relation>

1回以上

二つのCMP EntityBean間のリレーションシップについての定義。※3

<description>※1

0回以上※2

ejb-relationの説明。※3

<ejb-relation-name>

0または1回

relationshipsの名称。※3

<ejb1>

1回

ejb2に対するejb1の関連情報。※3

<description>※1

0回以上※2

ejb1の説明。※3

<ejb-relationship-role-name>

0または1回

リレーションシップロール名。※3

二つのCMP EntityBean間のリレーションシップ定義中では,それぞれ一意な名称を指定します。別リレーションシップ定義では,同じ名称であっても指定できます。

<multiplicity>

1回

ejb1のインスタンスの多重度。※3

指定できる文字列を次に示します。

  • One

  • Many

<cascade-delete>

0または1回

ejb2の削除時にejb1の自動削除をするかどうかの指定。※3

ejb2のmultiplicityがoneの場合に有効です。

<ejb-name>

1回

ejb1の名称。※3

指定できる文字列は,EJB-JAR中に存在するCMP2.0 Entity BeanのEJB名(<ejb-name>タグの値)です。

<cmr-field-name>

1回

ejb2のインスタンスを取得するCMRフィールド。※3

指定できる値は,「No EJB Name」または<ejb name>で指定したEJBが持つCMRフィールドのどれかです。

<cmr-field-type>

0または1回

CMRフィールド用メソッドの戻り値の型。※3

表示される値は,<cmr-field-name>で指定したaccessメソッドの戻り値です。

「java.util.Collection」または「java.util.Set」の場合は,そのまま表示します。それ以外の場合は空文字です。

<ejb2>

1回

ejb1に対するejb2の関連情報。※3

<description>※1

0回以上※2

ejb2の説明。※3

<ejb-relationship-role-name>

0または1回

リレーションシップロール名。※3

二つのCMP EntityBean間のリレーションシップ定義中では,それぞれ一意な名称を指定します。別リレーションシップ定義では,同じ名称であっても指定できます。

┃┃

<multiplicity>

1回

ejb2のインスタンスの多重度。※3

指定できる文字列を次に示します。

  • One

  • Many

<cascade-delete>

0または1回

ejb1の削除時にejb2の自動削除をするかどうかの指定。※3

ejb1のmultiplicityがoneの場合に有効です。

<ejb-name>

1回

Ejb2の名称。※3

指定できる文字列は,EJB-JAR中に存在するCMP2.0 Entity BeanのEJB名(<ejb-name>タグの値)です。

<cmr-field-name>

1回

ejb2のインスタンスを取得するCMRフィールド。※3

指定できる値は,「No EJB Name」または<ejb name>で指定したEJBが持つCMRフィールドのどれかです。

<cmr-field-type>

0または1回

CMRフィールド用メソッドの戻り値の型。※3

表示される値は,<cmr-field-name>で指定したaccessメソッドの戻り値。

「java.util.Collection」または「java.util.Set」の場合は,そのまま表示。それ以外の場合は空文字。

<security-role>

0回以上

セキュリティロールについての定義。

EJB2.1以前の場合に設定できます。EJB3.0以降の場合は設定できません。※3

<description>※1

0回以上※2

security-roleの説明。※3

<role-name>

1回

ロール名。※3

<linked-to>

0または1回

cjaddsecコマンドで定義したロール名。

cjsetrespropコマンドでは無視されます。

設定先のEJB-JARがDD(ejb-jar.xml)を保持していない場合でも,変更できます。

<interceptor-binding>※5

0回以上

クラスレベルインターセプタおよびメソッドレベルインターセプタに関する設定。

cjsetrespropコマンドでは無視されます。

次の場合は,ワーニングメッセージ(KDJE37604-W)が出力され,先に設定された<interceptor-binding>の<interceptor-class>の値が有効になります。

  • <ejb-name>にワイルドカードを設定した<interceptor-binding>の指定が複数ある場合。

  • <ejb-name>,<named-method>およびその配下の要素すべてが一致する<interceptor-binding>の指定が複数ある場合。

また,設定先がEJB2.1以前の場合は,ワーニングメッセージ(KDJE37613-W)が出力され,設定が無視されます。

<description>※1

0回以上※2

interceptor-bindingの説明。

<ejb-name>

1回

ワイルドカード(*)またはEnterprise Beanの<ejb-name>。デフォルトインターセプタの定義の場合,ワイルドカードを指定します。

<interceptor-class>

0回以上

インターセプタのクラスの名称。

<interceptor-class>と<interceptor-order>のどちらか一つを指定します。

<interceptor-order>

1回

インターセプタの順序性またはレベルの設定。

<interceptor-class>と<interceptor-order>のどちらか一つを指定します。

<interceptor-class>

1回以上

インターセプタのクラスの名称。

<exclude-default-interceptors>

0または1回

デフォルトインターセプタを除外するかどうかの指定。

表示される文字列を次に示します。

  • true(除外する場合)

  • false(除外しない場合)

<exclude-class-interceptors>

0または1回

クラスインターセプタを除外するかどうかの指定。

表示される文字列を次に示します。

  • true(除外する場合)

  • false(除外しない場合)

<named-method>

0または1回

メソッドの定義。

<method-name>

1回

EJBのビジネスメソッドの名称。「*」を指定した場合,ワイルドカードとして扱いません。

指定したメソッドが,<ejb-name>に指定したEnterprise Beanにない場合,ワーニングメッセージ(KDJE37612-W)が出力され,指定した値が設定されます。

<method-params>

0または1回

メソッドの引数。

<method-param>

0回以上

メソッドの引数。

<application-exception>

0回以上

アプリケーション例外に関する設定。

cjsetrespropコマンドでは無視されます。

<exception-class>の値が同じ<application-exception>が複数ある場合,ワーニングメッセージ(KDJE37604-W)が出力され,先に設定された値が有効になります。

また,設定先がEJB2.1以前の場合は,ワーニングメッセージ(KDJE37613-W)が出力され,設定が無視されます。

<exception-class>

1回

クライアントに通知する例外クラスの名称。

<rollback>

0または1回

指定した例外が発生したとき,クライアントに通知する前にロールバックを行うかどうかの指定。

表示される文字列を次に示します。

  • true(ロールバックを行う)

  • false(ロールバックを行わない)

<inherited>

0または1回

指定したクラスのサブクラスをアプリケーション例外として扱うかどうかの指定。

例外として扱う場合true,例外として扱わない場合false。デフォルトはtrue。

<ejb-client-jar>

0または1回

クライアントJARファイルの名称。※3

注※1

xml:lang属性を指定できます。xml:lang属性を指定しない場合は,「en(英語)」が仮定されます。なお,xml:lang属性が同じタグを複数指定できません。

注※2

EJB2.0以前のEJBに対して,このタグを複数指定できません。

注※3

アノテーションの設定値の場合は,値の変更をしないでください。

注※4

cjgetappprop,cjgetrespropコマンドで出力されたものに対し,タグ名の変更,タグの追加・削除,値の変更をしないでください。

注※5

アノテーションの設定値は,属性ファイルで更新できません。属性ファイルで更新できるのは,ejb-jar.xmlに定義した情報だけです。

(2) ejb-jar.xmlを含まない場合(EJB3.0以降)

タグ名

出現パターン

説明

<hitachi-ejb-jar-property>

1回

ルートタグ。

<description>※1

0回以上※2

EJB-JARの説明。※3

<display-name>※1

1回以上※2

EJB-JARの表示名。※3

1≦文字列長

変更する場合,英数字(0〜9,A〜Z,a〜z),および次の特殊文字を使用できます。

プラス(+),ハイフン(-),ピリオド(.),キャレット(^),アンダースコア(_)

<icon>※1

0回以上※2

GUIツール上に表示されるEJB-JARのアイコンの定義。※3

<small-icon>

0または1回

スモールアイコン(16×16)のファイル名。※3

<large-icon>

0または1回

ラージアイコン(32×32)のファイル名。※3

<interceptors>

0または1回

インターセプタの設定。※4

<description>※1

0回以上※2

interceptorsの説明。※4

<interceptor>

1回以上

インターセプタクラスの設定。※4

<description>※1

0回以上※2

interceptor-classの説明。※4

<interceptor-class>

1回

インターセプタクラスの名称。※4

<around-invoke>

0回以上

インターセプタのaroundinvokeメソッドの定義。※4

<class>

0または1回

インターセプタのaroundinvokeメソッドが存在するクラスをパッケージ名から表示。※4

<method-name>

1回

インターセプタのaroundinvokeメソッドの名称。※4

<post-construct>

0回以上

インターセプタのpost-constructメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpost-constructメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpost-constructメソッド名を表示。※4

<pre-destroy>

0回以上

インターセプタのpre-destroyメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpre-destroyメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpre-destroyメソッド名を表示。※4

<post-activate>

0回以上

インターセプタのpost-activateメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpost-activateメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpost-activateメソッド名を表示。※4

<pre-passivate>

0回以上

インターセプタのpre-passivateメソッドの定義。※4

<lifecycle-callback-class>

0または1回

インターセプタのpre-passivateメソッドが存在するクラスをパッケージ名から表示。※4

<lifecycle-callback-method>

1回

インターセプタのpre-passivateメソッド名を表示。※4

<interceptor-binding>

0回以上

クラスレベルインターセプタおよびメソッドレベルインターセプタに関する設定を表示します。cjsetrespropでは無視されます。※5

<ejb-name>にワイルドカード(*)を設定した<interceptor-binding>の指定が複数ある場合,ワーニングメッセージ(KDJE37604-W)を出力し,先に設定された<interceptor-binding>の<interceptor-class>の値が有効となります。

<description>※1

0回以上

interceptor-bindingの説明を表示します。デフォルトインターセプタに関する定義の場合interceptor-bindingの説明を記述します。

<ejb-name>

1回

ワイルドカード(*),またはEnterprise Beanの<ejb-name>を表示。デフォルトインターセプタに関する定義の場合,ワイルドカード(*)を記述。

<interceptor-class>

0回以上

インターセプタのクラス名を表示。デフォルトインターセプタに関する定義の場合。インターセプタクラスのクラス名を記述。

<interceptor-order>を指定した場合は不要です。

<interceptor-order>

0回以上

インターセプタの順序性およびレベルについての設定を表示。

<interceptor-class>を指定した場合は不要です。※4

<interceptor-class>

1回以上

インターセプタのクラス名を表示。※4

<exclude-default-interceptors>

0または1回

デフォルトインターセプタを除外するかどうかを表示。除外する場合true,除外しない場合false。デフォルトはfalse。※4

<exclude-class-interceptors>

0または1回

クラスインターセプタを除外するかどうかを表示。除外する場合true,除外しない場合false。デフォルトはfalse。※4

<named-method>

0または1回

メソッドの定義を表示。

<method-name>

1回

メソッド名を表示。※4

<method-params>

0または1回

メソッドの引数を表示。※4

<method-param>

0回以上

メソッドの引数を表示。※4

<application-exception>

0回以上

アプリケーション例外に関する設定を表示。※4

<exception-class>

1回

クライアントに通知する例外クラス名を表示。※4

<rollback>

0または1回

指定した例外が発生したとき,クライアントに通知する前にロールバックを行うかどうかを表示。ロールバックを行う場合true,ロールバックを行わない場合false。デフォルトはfalse。※4

<inherited>

0または1回

指定したクラスのサブクラスをアプリケーション例外として扱うかどうかの指定。

例外として扱う場合true,例外として扱わない場合false。デフォルトはtrue。※4

<ejb-client-jar>

0または1回

クライアントJARファイル名を表示。

注※1

xml:lang属性を指定できます。xml:lang属性を指定しない場合は,「en(英語)」が仮定されます。なお,xml:lang属性が同じタグを複数指定できません。

注※2

EJB2.0以前のEJBに対して,このタグを複数指定できません。

注※3

アノテーションの設定値の場合は,値の変更をしないでください。

注※4

cjgetappprop,cjgetrespropコマンドで出力されたものに対し,タグ名の変更,タグの追加・削除,値の変更をしないでください。

注※5

デフォルトインターセプタに関する定義(<ejb-name>タグの指定がワイルドカード(*)の場合)にだけ追加,変更できます。