WebLogic エンタープライズ JavaBeans (EJB) プログラマーズ ガイド
EJBGen リファレンス
EJBGen は、エンタープライズ JavaBeans 2.0 のコード ジェネレータです。Bean のクラス ファイルに Javadoc タグでアノテーションを付けると、EJBGen を使って EJB アプリケーションのリモート クラス、ホーム クラス、デプロイメント記述子ファイルを生成することができます。
デプロイメント記述子の生成には、EJBGen の使用をお勧めします。この BEA のベスト プラクティスでは、EJB の維持を容易化および簡略化できます。EJBGen を使用する場合、記述してアノテーションを付ける必要がある Bean クラスは 1 つだけです。そのため、記述、デバッグ、および維持が簡略化されます。開発環境として WebLogic Workshop を使用すると、EJBGen タグが自動挿入されます。以下の節では、EJBGen の使い方および EJBGen のコマンド オプションとタグの定義方法を示します。
EJBGen の実行
以下の節では、EJBGen を使用してアノテーション付き Bean ファイルを処理する方法を説明します。
EJBGen の配布と例
WebLogic Server 8.1 SP02 から、EJBGen とその関連クラスは weblogic.jar
に含まれません。その代わりに、独立したアーカイブとして提供されます (WebLogic Server 配布キットの WL_HOME/server/lib
の ejbgen.jar
)。EJBGen を使用するには、CLASSPATH で ejbgen.jar
を指定してください。
BEA WebLogic 8.1 の例がインストールされている場合、EJBGen を使用する Bands というサンプル アプリケーションについては WL_HOME\samples\server\examples\src\examples\ejb20\relationships
を参照してください。
EJBGen の起動
次のコマンドを使用すると、Bean のソース ファイルで EJBGen を実行できます。
javadoc -docletpath ejbgen.jar -doclet weblogic.tools.ejbgen.EJBGen (YourBean).java
クラスパス内に ejbgen.jar
がない場合は、次のように weblogic.jar
にパスを追加します。
javadoc -docletpath <path_to_ejbgen.jar> ejbgen.jar -doclet weblogic.tools.ejbgen.EJBGen (YourBean).java
他の EJB との関係がある EJB に対して EJBGen を呼び出す場合は、次のように EJB の後に、関係する EJB を指定してその EJB を呼び出します。
javadoc -docletpath ejbgen.jar -doclet weblogic.tools.ejbgen.EJBGen (YourBean).java (RelatedBean).java
EJBGen のコマンド オプション
表 D-1 は、EJBGen のコマンド オプションを定義しています。
表 D-1 EJBGen のコマンド オプション
オプション
|
デフォルト
|
定義
|
-checkTags
|
なし
|
このオプションで起動した場合、EJBGen はどのクラスも生成しないが、コマンドラインで指定したクラスに対して有効でない EJBGen タグを見つける。
|
-classpath
|
なし
|
クラス パス。
|
-d [directory]
|
|
このディレクトリの下にすべてのファイルが作成される。
|
-descriptorDir [directory]
|
|
-d [directory] オプションで指定された出力ディレクトリに相対的な、すべての記述子ファイルが作成されるディレクトリ。
|
-docTag tagName
|
|
これを指定すると、EJBGen は把握されているすべての属性など、このタグの詳細な説明を出力する。注意点として、このオプションでどのソースファイルも必要ないにもかかわらず、コマンドラインで既存の .java クラスを指定しなくてはならない。これをしないと、このフラグを認識したにもかかわらず、Javadoc はエラーメッセージを返す。
|
-docTags
|
|
EJBGen によって把握された、すべてのタグを出力する。注意点として、このオプションでどのソースファイルも必要ないにもかかわらず、コマンドラインで既存の .java クラスを指定しなくてはならない。これをしないと、このフラグを認識したにもかかわらず、Javadoc はエラーメッセージを返す。
|
-docTagsHtml
|
|
-docTags と同じであるが、HTML 文書を生成する。
|
-ejbPrefix [string]
|
""
|
EJB クラス生成時に使用するプレフィックス。
|
-ejbSuffix [string]
|
Bean または EJB
|
EJB クラス生成時に使用するサフィックス。
|
-ejbgenQuiet [boolean]
|
なし
|
EJBGen の冗長度を低くする。
|
-ejbgenVerbose [boolean]
|
なし
|
EJBGen の冗長度を低くする。
|
errorFile
|
なし
|
エラーがリダイレクトされるファイルのパス。
|
exitOnError [boolean]
|
なし
|
EJBGen はエラーの発生時に終了する必要がある。
|
-homeBaseClass [string (className)]
|
なし
|
ホーム リモート インタフェースの基本クラス。
|
-experimental [boolean]
|
なし
|
試験的な機能を有効にする。
|
-extractTemplates [directory]
|
なし
|
テンプレートを抽出するディレクトリ。
|
-forceGeneration [boolean]
|
なし
|
タイムスタンプに関係なくすべてのファイルの生成を強制する。
|
-homeBaseClass [string (className)]
|
なし
|
ホーム リモート インタフェースの基本クラス。
|
-ignorePackage
|
|
このフラグを設定すると、EJBGen は生成した Java ファイルのパッケージ名を無視し、-d フラグで指定された出力ディレクトリにファイルを作成する (-d フラグが指定されていない場合は、カレント ディレクトリ)。
|
-jndiPrefix [string]
|
""
|
@remote-jndi-name と @local-jndi-name で使用するプレフィックス。
|
-jndiSuffix [string]
|
""
|
@remote-jndi-name と @local-jndi-name で使用するサフィックス。
|
-localBaseClass [string (className)]
|
なし
|
ローカル インタフェースの基本クラス。
|
localHomeBaseClass [className]
|
なし
|
ローカル ホーム インタフェースの基本クラス。
|
-localHomePrefix [string]
|
""
|
ローカル EJB クラス生成時に使用するプレフィックス。
|
-localHomeSuffix [string]
|
LocalHome
|
ローカル EJB クラス生成時に使用するサフィックス。
|
-localPrefix [string]
|
""
|
ローカル EJB クラス生成時に使用するプレフィックス。
|
-localSuffix [string] (
|
|
ローカル EJB クラス生成時に使用するサフィックス。
|
-noImports [boolean]
|
false
|
java imports の生成されたクラスへの伝播を無効にする。
|
-noLocalInterfaces
|
|
これを指定すると、ローカル インタフェースは生成されない。
|
-noRedirection noRedirection ejbgen.noRedirection [boolean]
|
なし
|
EJBGen によって実行されるすべてのリダイレクトを取り消す。
|
-noRemoteInterfaces [boolean]
|
|
これを指定すると、リモート インタフェースは生成されない。
|
-noticeFile [file]
|
なし
|
通知がリダイレクトされるファイルのパス。
|
-noValueClasses [boolean]
|
なし
|
これを指定すると、Value クラスは生成されなくなる。
|
-pfd1
|
なし
|
このフラグを設定すると、EJBGen は EJB 2.0 の最終草案バージョン 1 と互換したデプロイメント記述子を生成する。Weblogic 6.1 より前のバージョンを使用する場合には、このフラグを必ず使用する。
|
-pfd2
|
なし
|
このフラグを設定すると、EJBGen は EJB 2.0 の最終草案バージョン 2 と互換したデプロイメント記述子を生成する。Weblogic 6.1 より前のバージョンを使用する場合には、このフラグを必ず使用する。
|
-primaryKeyBaseClass [string (class name)]
|
なし
|
生成された主キーの基本クラス。
|
-printDiagnostic [boolean]
|
なし
|
EJBGen が見つけたすべてのタグの診断を出力する。
|
-printTags [boolean]
|
なし
|
EJBGen で認識されたすべてのタグを表示する。
|
-propertyFile [fileName]
|
|
EJBGen が置換変数を定義するのに読み込む、プロパティ ファイルの名前。「EJBGen でのプロパティ ファイルの使用」を参照。
|
-remoteBaseClass [string (className)]
|
なし
|
リモート インタフェースの基本クラス。
|
-remoteHomePrefix [string]
|
""
|
リモート EJB ホーム クラス生成時に使用するプレフィックス。
|
-remoteHomeSuffix [string]
|
|
リモート EJB ホーム クラス生成時に使用するサフィックス。
|
-remotePrefix [string]
|
""
|
リモート EJB クラス生成時に使用するプレフィックス。
|
-remoteSuffix [string]
|
""
|
リモート EJB クラス生成時に使用するサフィックス。
|
source [version number]
|
1.3
|
使用する JDK のバージョン。
|
-sourcepath [directory]
|
なし
|
ソース パス。
|
-templateDir [directory]
|
なし
|
テンプレートが格納されるディレクトリ。
|
-toStringForPrimitivesOnly
|
|
これを指定すると、値オブジェクトの toString() メソッドはプリミティブであるコンテナ管理による永続性フィールドのみを表示する。このフラグは、値オブジェクト間での循環的な参照の問題 (AValue.toString() が BValue.toString() を呼び出し、それがさらに AValue.toString() を呼び出すなど) を解消する。
|
-valueBaseClass [string (class name)]
|
なし
|
Value オブジェクト クラス生成時に使用するサフィックス。
|
-valueObjectPrefix [string]
|
なし
|
Value オブジェクト クラス生成時に使用するプレフィックス。
|
-valueObjectSuffix [string]
|
なし
|
Value オブジェクト クラス生成時に使用するサフィックス。
|
-valuePackage [string (package name)]
|
なし
|
値クラスが属するパッケージ。
|
verbose [boolean]
|
false
|
より多くの情報を表示する。
|
-wls6 [boolean]
|
なし
|
このフラグは EJBGen が WebLogic Server 7.0 のデプロイメント記述子を生成することを指定するのに使用する。
|
-wls7 [boolean]
|
なし
|
このフラグは EJBGen が WebLogic Server 7.0 のデプロイメント記述子を生成することを指定するのに使用する。
|
-wls71 [boolean]
|
なし
|
このフラグは EJBGen が WebLogic Server 7.1 のデプロイメント記述子を生成することを指定するのに使用する。
|
-wls81 [boolean]
|
なし
|
このフラグは EJBGen が WebLogic Server 8.1 のデプロイメント記述子を生成することを指定するのに使用する。
|
-wls9 [boolean]
|
なし
|
このフラグは EJBGen が WebLogic Server 9.0 のデプロイメント記述子を生成することを指定するのに使用する。
|
-workshopDocTags [boolean]
|
なし
|
ヘルプを Workshop の HTML 形式で表示する。
|
-xmlEncoding [string]
|
なし
|
XML ファイルを生成するときに使用するエンコーディング (デフォルト : UTF-8)。
|
未コンパイルの値タイプ クラスによる Javadoc 警告
EJBGen クラスに、未コンパイルの Java クラスである値タイプ (パラメータ値、戻り値など) が含まれる場合、Javadoc は コード リスト 8-6 に示すように javac
コンパイル エラーのようなものを出力します。
コード リスト 8-6値タイプ クラスが未コンパイルの場合の Javadoc 出力サンプル
[javadoc]
C:\toddk\dev\issues\cr100528\src\test\po\PurchaseOrderBean.java:29: cannot resolve symbol [javadoc] symbol : class PurchaseOrder [javadoc] location: class test.po.PurchaseOrderBean [javadoc] public boolean submitPO(PurchaseOrder po) throws SubmitException {
[javadoc]
[javadoc] C:\toddk\dev\issues\cr100528\src\test\po\PurchaseOrderBean.java:29: cannot resolve symbol [javadoc] symbol : class SubmitException [javadoc] location: class test.po.PurchaseOrderBean [javadoc] public boolean submitPO(PurchaseOrder po) throws SubmitException {
これらは、Javadoc 警告であって、エラーではありません。エラー メッセージと javac コンパイラ エラーが似通っているため、エラーとして誤って解釈されやすくなっています。Javadoc は、正常に実行されたことを示す終了ステータスと共に返るので、Ant EJBGen タスクが構築失敗の原因となることはありません。
主要な EJBGen の機能の使い方
以下の節では、主要な EJBGen の機能とその使い方について説明します。
EJBGen が生成するファイルの管理
デフォルトでは、EJBGen は次のファイルを生成します。
リモート Bean およびホーム インタフェース (@ejbgen:jndi-name が「remote」で指定された場合)
ローカル Bean およびホーム インタフェース (@ejbgen:jndi-name が「local」で指定された場合)
値オブジェクト クラス
主キー クラス (該当する場合)
これらのファイルの生成は、@ejbgen:file-generation
を使用して選択的に無効化できます。これは、Bean ごとに実行できます。次のコード サンプルでは、値クラスが生成されないようにしています。
/**
* @ejbgen:file-generation
* value-class = False
*/
注意 : コマンドライン オプション -noValueClasses
、-noRemoteInterfaces
、または -noLocalInterfaces
は、Bean で見つかったすべてのタグをオーバーライドします。
EJBGen でのプロパティ ファイルの使用
EJBGen は、この節で説明するように、プロパティ ファイルから生成のための情報を収集できます。
EJBGen
にプロパティ ファイルの解析を指示するには、-propertyFile
オプションを使用します。コード リスト 8-7 は、サンプルのプロパティ ファイルを示しています。
コード リスト 8-7サンプルの EJBGen プロパティ ファイル
# property-file
#
remote-jndi-name = Account
-propertyFile
オプションを指定して EJBGen を呼び出すには、次の構文を使用します。
javadoc -docletpath ejbgen.jar -doclet EJBGen -propertyFile property-file AccountBean.java
EJBGen は、プロパティ ファイル内にユーザ変数およびあらかじめ定義された変数という、2 種類の変数を認識します。
ユーザ変数の使い方
EJBGen タグでは、文字列の代わりに変数を使用できます。これらの変数はコード リスト 8-8 に示すように、「${」と「}」で囲む必要があります。
コード リスト 8-8文字列の代わりのユーザ変数
@ejbgen:jndi-name
remote = ${remote-jndi-name}
変数は、EJBGen タグの後であればどこででも使用できます。したがって、コード リスト 8-9 に示すようにタグ定義全体を含めることができます。
コード リスト 8-9タグ定義全体としてのユーザ変数
@ejbgen:jndi-name
${jndi-name-tag}
#
#
# property-file
#
jndi-name-tag = remote = RemoteAccount local = LocalAccount
定義済み変数の使い方
EJBGen は、いくつかのあらかじめ定義された変数を認識します。これらの変数はタグでは使用しないことになっていますが、EJBGen ではロールに応じてさまざまな場所で使用します。以下に、認識される変数を示します。
remote.baseClass
これを指定すると、この変数の値は生成されたすべてのリモート クラスの基本クラスとして使用されます。
home.baseClass
これを指定すると、この変数の値は生成されたすべてのリモート ホーム クラスの基本クラスとして使用されます。
local.baseClass
これを指定すると、この変数の値は生成されたすべてのローカル クラスの基本クラスとして使用されます。
localHome.baseClass
これを指定すると、この変数の値は生成されたすべてのローカル ホーム クラスの基本クラスとして使用されます。
value.baseClass
これを指定すると、この変数の値は生成されたすべての値クラスの基本クラスとして使用されます。
value.package
これを指定すると、この変数の値は生成されたすべての値クラスのパッケージとして使用されます。
value.interfaces
これを指定すると、この変数の値は値クラスが実装すべきインタフェースとして使用されます。この変数は、カンマで区切ったインタフェースのリストにもできます。
これらの変数は、EJBName
をプレフィックスとすることでより特定的にできます。たとえば、次のようなプロパティ ファイルの場合を考えます。
#
# property-file
#
Account.home.baseClass = BaseAccountHome
home.baseClass = BaseHome
value.package = value
containerManaged.value.package=valuePackageForContainerManaged
EJBGen によって生成されたホームはすべて、クラス BaseHome
を拡張します。ただし、EJB「Account」のホームは例外で、BaseAccountHome
を拡張します。
スペースを含む属性は二重引用符で囲む
スペースの含まれる属性を指定する際には、その属性値を二重引用符で囲みます。次に例を示します。
group-names = "group1, group2"
EJBGen によるタグ継承のサポート
EJBGen 2.0 の主要な機能の 1 つに、タグの継承があります。EJBGen
のアノテーションは、Java での場合と同じようにして継承されます。たとえば、コード リスト 8-10 に示すように基本クラス BaseAccount
の AccountEJB
という名前が付けられた EJB があるとします。
コード リスト 8-10タグの継承
/**
*
@ejbgen:jndi-name
*
remote="BaseRemote"
*/
public class BaseAccount implements EntityBean {
// ...
}
ここで、EJB のクラスを定義します。
/**
*
@ejbgen:entity
*
ejb-name = containerManaged
*
table-name = ejbAccounts
*
data-source-name = examples-dataSource-demoPool
*
*
BaseAccount で定義される JNDI 名を継承
*/
public class AccountEJB extends BaseAccount {
// ...
EJBGen による属性継承のサポート
属性も継承できます。これは、多くの用途が考えられる、極めて強力な機能です。たとえば、コード リスト 8-11 にあるように、max-beans-in-cache
のようなすべての EJB に共通の設定を定義することもできます。
コード リスト 8-11属性継承のサポート
\
/**
*
@ejbgen:entity
*
max-beans-in-cache = 300
*
/
public class BaseAccount implements EntityBean {
// ...
}
この後、次のようにエンティティ Bean を定義します。
/**
*
@ejbgen:entity
*
ejb-name = containerManaged
*
table-name = ejbAccounts
*
data-source-name = examples-dataSource-demoPool
*
*
// 属性 max-beans-in-cache = 300 を自動的に継承
*
/
public class AccountEJB extends BaseAccount {
// ...
もちろん、継承した値を修正することも可能です。たとえば、特定の Bean について、max-beans-in-cache
のデフォルト値を 300 から 400 に変更できます。
/**
*
@ejbgen:entity
*
ejb-name = containerManaged
*
table-name = ejbAccounts
*
data-source-name = examples-dataSource-demoPool
*
max-beans-in-cache = 400
*
*
// 上の設定で基本クラスの定義内容がオーバーライドされる
*/
public class AccountEJB extends BaseAccount {
// ...
EJBGen タグの使用例
以下の節では、EJBGen タグでアノテーションが付けられたソース コードのサンプルを示します。
EJBGen タグでアノテーションが付けられたサンプルの Bean ファイル
この例は、リモート インタフェースとホーム インタフェースおよびデプロイメント記述子ファイルを生成するために EJBGen が使用できるアノテーションが付けられた CMP EJB 2.0 エンティティ Bean のファイルを示しています。 AccountBean.java
がメインの Bean クラスです。
/**
* @ejbgen:entity
* ejb-name = AccountEJB-OneToMany
* data-source-name = examples-dataSource-demoPool
* table-name = Accounts
* prim-key-class = java.lang.String
*
* @ejbgen:jndi-name
* local = one2many.AccountHome
*
* @ejbgen:finder
* signature = "Account findAccount(double balanceEqual)"
* ejb-ql = "WHERE balance = ?1"
*
* @ejbgen:finder
* signature = "Collection findBigAccounts(double balanceGreaterThan)"
* ejb-ql = "WHERE balance > ?1"
*
* @ejbgen:relation
* name = Customer-Account
* target-ejb = CustomerEJB-OneToMany
* multiplicity = many
* cmr-field = customer
*
*/
abstract public class AccountBean implements EntityBean {
/**
* @ejbgen:cmp-field column = acct_id
* @ejbgen:primkey-field
* @ejbgen:remote-method transaction-attribute = Required
*/
abstract public String getAccountId();
abstract public void setAccountId(String val);
// ....
}
この例は、2 種類の EJBGen タグを示しています。2 種類のタグはクラス タグとメソッド タグで、使用場所が異なります。
ファイルが完成したら、次の Javadoc コマンドで EJBGen を起動します。
javadoc -docletpath weblogic.jar -doclet weblogic.tools.ejbgen.EJBGen AccountBean.java
Javadoc コマンドは、次のファイルを生成します。
Account.java
AccountHome.java
ejb-jar.xml
weblogic-ejb-jar.xml
weblogic-cmp-jar.xml
「EJBGen タグのリファレンス」では、Bean のクラス ファイルにアノテーションを付けるために使用できる EJBGen タグが定義されています。
EJBGen による複数テーブルへのエンティティ Bean のマッピング
デフォルトでは、エンティティ Bean はタグ @ejbgen:entity
に属性 table-name
を指定して 1 つのテーブルにマップされます。エンティティ Bean を複数のテーブルにマップする場合には、個々の @ejbgen:cmp-fields
で table-name
属性を使用できます。table-name
属性のないコンテナ管理による永続性フィールドはすべて、@ejbgen:entity
で指定したテーブルを使用します (したがって、これを「デフォルト」テーブルと考えることができます)。
エンティティ Bean を複数のテーブルにマップする場合、table-name
属性において (およびカラム上で) カンマ区切りのテーブル リストを指定する必要があります。次に例を示します。
テーブル数とカラム数が一致しており、カラムが対応するテーブル内に存在することを確認してください。
EJBGen タグによるリレーションシップ キャッシングの指定
@ejbgen:relationship-caching
タグを使用して、リレーションシップ キャッシング要素を指定できます。この XML 要素は、ネストできます (再帰的)。つまり、キャッシュしたいリレーションシップ要素をすべて表す、ツリーを指定できます。
このツリー構造をサポートするため、@ejbgen:relationship-caching
には id
および parent-id
という 2 つの属性があります。これらの属性はどの XML にも対応しません。単に、これらを使うとツリー構造が指定できるというだけです。
たとえば、キャッシング要素 A に子要素 B および C が必要な場合、A のための id
(たとえば「root0」) と、その名前に等しい B および C の parent-id
を指定するだけですみます。
コード リスト 8-12 は、リレーションシップ キャッシングの指定を説明しています。
コード リスト 8-12リレーションシップ キャッシングの指定
* @ejbgen:relationship-caching-element
* caching-name = cacheMoreBeans
* cmr-field = employee
* group-name = emp-group
* id = A
*
* @ejbgen:relationship-caching-element
* caching-name = cacheMoreBeans
* cmr-field = employee_ssn
* group-name = emp-group
* parent-id = A
*
* @ejbgen:relationship-caching-element
* caching-name = cacheMoreBeans
* cmr-field = employee_zip
* group-name = emp-group
* * parent-id = A
EJBGen タグによる関係の指定
一方向の関係は、関係タグの最初の 2 つのパラメータのみ (CMR_field や joint table はなし) を指定することで実現します。
多対多の関係では、少なくとも 2 つのカラムを含む、追加のテーブル (パラメータ「joint table」) を指定する必要があります。これらのカラムの名前は、結合される 2 つの Bean の外部キーを含むカラムの名前に一致している必要があります。
ローカル インタフェースを使用するように関係を更新する
PFD2 より前に公開された EJB 2.0 仕様のバージョンに基づく EJB を使用している場合は、更新が必要です。PFD2 では、関係はリモート インタフェースではなく、ローカル インタフェースに基づいている必要があります。EJB のアップグレードを行うために必要な手順は次のとおりです。
ローカル ホーム インタフェースの JNDI 名を追加します。
@ejbgen:jndi-name
remote = AccountHome
local = AccountLocalHome
ローカル ホーム インタフェース上に置きたいすべてのメソッドに @ejbgen:local-method
タグを追加します。1 つのメソッドが @ejbgen:local-method
と @ejbgen:remote-method
の両方を持つことが可能です。
コンテナ管理の関係 (CMR) アクセス メソッドの戻り値の型を、ローカル EJB オブジェクトの戻り値の型に変更します (複数の値を持つ CMR フィールドは集合なので、これは単一の値を持つ CMR フィールドのみに適用されます。これらの集合にローカル EJB オブジェクトが含まれることに留意してください)。
/**
* @ejbgen:cmr-field
*
* @ejbgen:remote-method
* @ejbgen:local-method
*/
abstract public LocalCustomer getCustomer();
EJBGen タグのリファレンス
この節は、Bean のクラス ファイルにアノテーションを付ける際に使用できる EJBGen タグの詳細なリファレンスです。
@ejbgen:automatic-key-generation
使用場所 : クラス
適用対象 : エンティティ Bean
属性
|
説明
|
必須/省略可能
|
cache-size
|
主要キャッシュのサイズ。
|
必須
|
name
|
ジェネレータの名前。
|
可能
|
type
|
ジェネレータのタイプ。
|
可能
|
@ejbgen:cmp-field
使用場所 : メソッド
適用対象 : エンティティ Bean
属性
|
説明
|
必須
|
column
|
CMP フィールドがマップされるカラム。 「EJBGen による複数テーブルへのエンティティ Bean のマッピング」を参照。
|
必須
|
column-type
|
(OracleClob | OracleBlob) このカラムのタイプ。
|
できない
|
exclude-from-value-object
|
(True | False) True であれば、このフィールドは値オブジェクトにおいて生成されない。
|
省略可能
|
group-names
|
このフィールドが属するグループ名をカンマで区切ったもの。グループ名のリストを二重引用符で囲む。
|
省略可能
|
ordering-number (0..n)
|
このフィールドがシグネチャおよびコンストラクタ内に置かれるべき順番。この順序付けを有効にするためには、すべての cmr および cmp フィールドでこの属性に異なる数値を設定する必要がある。
|
省略可能
|
primkey-field
|
(True | False) このフィールドが複合主キーの一部であるかどうか。
|
省略可能
|
read-only-in-value-object
|
(True | False) True であれば、値オブジェクトのこのフィールドでゲッターしか生成されない。
|
省略可能
|
table-name
|
このフィールドがマップされるテーブル。「EJBGen による複数テーブルへのエンティティ Bean のマッピング」。
|
省略可能
|
@ejbgen:cmr-field
使用場所 : メソッド
適用対象 : エンティティ Bean
属性
|
説明
|
必須
|
exclude-from-value-object
|
(True | False) True であれば、このフィールドは値オブジェクトにおいて生成されない。
|
省略可能
|
group-names
|
このフィールドが属するグループ名をカンマで区切ったもの。グループ名のリストを二重引用符で囲む。
|
省略可能
|
ordering-number (0..n)
|
このフィールドがシグネチャおよびコンストラクタ内に置かれるべき順番。この順序付けを有効にするためには、すべての cmr および cmp フィールドがこの属性で異なる数値を持つ必要がある。
|
省略可能
|
read-only-in-value-object
|
(True | False) True であれば、値オブジェクトのこのフィールドでゲッターしか生成されない。
|
省略可能
|
@ejbgen:compatibility
使用場所 : クラス
適用対象 : すべて
属性
|
説明
|
必須
|
serialize-byte-array-to-oracle-blob
|
(True|False) OracleBlob にマップされた byte[] 型の cmp-field がシリアライズされるべきかどうか。
|
省略可能
|
@ejbgen:create-default-rdbms-tables
使用場所 : クラス
適用対象 : エンティティ Bean
属性
|
説明
|
必須/省略可能
|
value
|
(CreateOnly | Disabled | DropAndCreate | DropAndCreateAlways | AlterOrCreate )
|
省略可能
|
@ejbgen:ejb-client-jar
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須
|
file-name
|
生成するクライアント JAR の名前。複数の EJB にこのタグがあった場合、指定された JAR ファイルのうち 1 つだけがデプロイメント記述子に含められる。
|
可能
|
@ejbgen:ejb-interface
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須
|
ejb-type
|
(javax.ejb.MessageDrivenBean|javax.ejb.EntityBean|javax.ejb.SessionBean) この EJB のタイプを指定する。このタグは通常は使用しない。
|
可能
|
@ejbgen:ejb-local-ref
使用場所 : クラス
適用対象 : セッション Bean とエンティティ Bean
属性
|
説明
|
必須/省略可能
|
home
|
Bean のローカル クラス。
|
省略可能
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
jndi-name
|
参照の JNDI 名。
|
省略可能
|
link
|
Bean へのリンク。
|
省略可能
|
local
|
Bean のホーム クラス。
|
省略可能
|
name
|
参照の名前。
|
省略可能
|
type
|
(Entity | Session)
|
省略可能
|
@ejbgen:ejb-ref
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須/省略可能
|
home
|
Bean のリモート クラス。
|
省略可能
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
jndi-name
|
参照の JNDI 名。
|
省略可能
|
link
|
Bean のリンク。
|
省略可能
|
name
|
参照の名前。
|
省略可能
|
remote
|
Bean のホーム クラス。
|
省略可能
|
type
|
(Entity | Session )
|
省略可能
|
@ejbgen:entity
使用場所 : クラス
適用対象 : エンティティ Bean
属性
|
説明
|
必須/省略可能
|
ejb-name
|
エンティティ Bean の名前。
|
必須
|
prim-key-class
|
null
|
必須
|
abstract-schema-name
|
この EJB の抽象スキーマ名。指定されない場合、ejb-name の値が使用される。
|
省略可能
|
cache-between-transactions
|
(True | False ) エンティティ Bean の永続データをトランザクション間でキャッシュするかどうか。
|
省略可能
|
check-exists-on-method
|
(True | False ) コンテナが各メソッド呼び出しについて Bean の有無をチェックするかどうか。
|
省略可能
|
concurrency-strategy
|
(Optimistic |ReadOnly | Exclusive | Database ) この Bean の同時方式を定義する。
|
省略可能
|
data-source-name
|
データソース名 (config.xml ファイルで宣言したのと同じ)。
|
省略可能
|
database-type
|
データベースのタイプ。
|
|
db-is-shared
|
(True | False )
|
省略可能
|
default-dbms-tables-ddl
|
DDL のファイル名を指定する。
|
省略可能
|
default-transaction
|
詳細なトランザクション属性を設定しない、すべてのメソッドに適用されるトランザクション属性。
|
省略可能
|
delay-database-insert-until
|
(ejbCreate | ejbPostCreate )
|
省略可能
|
delay-updates-until-end-of-tx
|
(True|False) トランザクション コミット後に更新が送信されるかどうかを指定する。
|
省略可能
|
dispatch-policy
|
Bean の JMS ディスパッチ ポリシー キュー。
|
省略可能
|
enable-batch-operations
|
(True|False) バッチ処理を実行するかどうかを指定する。
|
省略可能
|
enable-call-by-reference
|
(True | False ) コンテナがこの EJB を参照で呼び出すかどうか。
|
省略可能
|
enable-dynamic-queries
|
(True | False ) 動的クエリが有効化されているかどうか。
|
省略可能
|
finders-load-bean
|
(True | False ) これを True に設定した場合、Bean はファインダによってすぐにキャッシュにロードされる。
|
省略可能
|
home-call-router-class-name
|
ホーム メソッド呼び出しのルーティングに使用するクラス。
|
省略可能
|
home-is-clusterable
|
(True | False ) この Bean をクラスタ内の複数のサーバにデプロイできるかどうか。
|
省略可能
|
home-load-algorithm
|
(RoundRobin | Random | WeightBased ) このホームのレプリカ間でロード バランシングを行うためのアルゴリズム。
|
省略可能
|
idle-timeout-seconds
|
ある EJB がキャッシュ内に置かれる最長の時間。
|
省略可能
|
initial-beans-in-free-pool
|
フリー プール内の Bean の初期数を指定する。
|
省略可能
|
instance-lock-order
|
(AccessOrder|ValueOrder) このエンティティ Bean のロック順序。
|
省略可能
|
invalidation-target
|
コンテナ管理による永続性エンティティ EJB が変更された場合に無効とすべき、読み込み専用エンティティ Bean の ejb-name 。
|
省略可能
|
lock-order
|
トランザクションに複数の Bean が関与する場合の、この Bean のデータベース ロック順を設定する。
|
省略可能
|
max-beans-in-cache
|
キャッシュ内の Bean の最大数。
|
省略可能
|
max-beans-in-free-pool
|
フリー プール内の Bean の最大数。
|
省略可能
|
optimistic-column
|
オプティミスティックな同時実行性のためのタイムスタンプを保持するカラム。
|
省略可能
|
persistence-type
|
(CMP | BMP ) この Bean の永続性がコンテナ管理によるものであるか Bean 管理によるものであるか。
|
省略可能
|
prim-key-class-nogen
|
(True | False )。このキーワードを指定した場合、EJBGen は (各自が提供するものと仮定して) 主キー クラスを生成しなくなる。
|
省略可能
|
read-timeout-seconds
|
読み込み専用エンティティ Bean に ejbLoad() を呼び出す間隔の秒数。
|
省略可能
|
reentrant
|
(True | False )
|
省略可能
|
run-as
|
この EJB の role-name を指定する。
|
省略可能
|
run-as-identity-principal
|
ロールを複数プリンシパルにマップする場合のプリンシパル名を指定する。
注意 : run-as-identity-principal は WebLogic Server 8.1 で非推奨になった。
|
省略可能
|
table-name
|
主キーの Java クラス。複合主キーの場合、このクラスは EJBGen によって生成される。
|
省略可能
|
trans-timeout-seconds
|
トランザクション タイムアウトの秒数。
|
省略可能
|
use-caller-identity
|
(True | False ) この EJB が呼び出し側の ID を使用するかどうか。
|
省略可能
|
use-select-for-update
|
(True | False ) データベースから Bean がロードされるときに SELECT ... FOR UPDATE 句が使用される。
|
省略可能
|
validate-db-schema-with
|
(MetaData | TableQuery ) EJB コンテナによって作成されるテーブルの検証に使用されるメソッド。
|
省略可能
|
verify-columns
|
(Read |Modified | Version | Timestamp ) オプティミスティックな同時実行性が、トランザクション中に修正対象となるカラムが修正されていないことを確認する方法。
|
省略可能
|
verify-rows
|
(Read |Modified ) オプティミスティックな同時実行性が、トランザクション中に修正対象となる行が修正されていないことを確認する方法。
|
省略可能
|
@ejbgen:entity-cache-ref
使用場所 : クラス
適用対象 : エンティティ Bean
属性
|
説明
|
必須
|
cache-between-transactions
|
(True | False ) エンティティ Bean の永続データをトランザクション間でキャッシュするかどうか。
|
省略可能
|
concurrency-strategy
|
(Optimistic |ReadOnly | Exclusive | Database ) この Bean の同時方式を定義する。
|
省略可能
|
estimated-bean-size
|
エンティティ Bean のインスタンスの推定平均サイズ (バイト単位)。
|
省略可能
|
name
|
キャッシュの名前。
|
省略可能
|
@ejbgen:env-entry
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須/省略可能
|
name
|
この環境エントリの名前。
|
必須
|
type
|
この環境エントリの Java タイプ (java.lang であっても完全修飾しなければならない)。
|
必須
|
value
|
この環境エントリの値。
|
可能
|
@ejbgen:file-generation
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須
|
local-class
|
(True | False ) この EJB のローカル インタフェースを生成するかどうか。
|
省略可能
|
local-class-name
|
生成されるローカル クラスの名前。
|
省略可能
|
local-home
|
(True | False ) この EJB のローカル ホーム インタフェースを生成するかどうか。
|
省略可能
|
local-home-name
|
生成されるローカル ホーム クラスの名前。
|
省略可能
|
local-home-package
|
ローカル ホーム インタフェースのパッケージ。
|
省略可能
|
local-package
|
ローカル インタフェースのパッケージ。
|
省略可能
|
pk-class
|
(True | False ) この EJB の主キー クラスを生成するかどうか。
|
省略可能
|
remote-class
|
(True | False ) この EJB のリモート インタフェースを生成するかどうか。
|
省略可能
|
remote-class-name
|
生成されるリモート クラスの名前。
|
|
remote-home
|
(True | False ) この EJB のリモート ホーム インタフェースを生成するかどうか。
|
省略可能
|
remote-home-name
|
生成されるリモート ホーム クラスの名前。
|
省略可能
|
remote-home-package
|
リモート ホーム インタフェースのパッケージ。
|
省略可能
|
remote package
|
リモート インタフェースのパッケージ。
|
省略可能
|
value-class
|
(True | False ) この EJB の値クラスを生成するかどうか。
|
省略可能
|
value-class-name
|
生成される値クラスの名前。
|
省略可能
|
@ejbgen:finder
使用場所 : クラス
適用対象 : エンティティ Bean
属性
|
説明
|
必須
|
caching-name
|
期待されるリレーションシップ キャッシングの名前。
|
省略可能
|
comment
|
生成されたファインダ Java メソッドの上に再現されるコメント。
|
省略可能
|
ejb-ql
|
デプロイメント記述子に含まれるものと同じ、EJB QL リクエスト。
|
省略可能
|
generate-on
|
(Local | Remote ) このファインダの生成場所となるホーム。指定がなければ両方。
|
省略可能
|
group-name
|
WebLogic クエリのグループの名前。
|
省略可能
|
include-updates
|
(True | False ) 現在のトランザクション中の更新を必ずクエリの結果に反映するかどうか。
|
省略可能
|
isolation-level
|
このメソッドのトランザクション アイソレーションのタイプ。
|
省略可能
|
max-elements
|
多値クエリによって返される要素の最大数。
|
省略可能
|
signature
|
ホーム クラスに生成したいシグネチャと正確に一致させなければならない。EJBGen は適合例外を追加するが、各パラメータについて、java.lang であっても完全修飾したタイプを必ず指定する。
|
省略可能
|
sql-select-distinct
|
(True | False ) 生成された SQL 'SELECT' に 'DISTINCT ' 修飾子が含まれるかどうか。
|
省略可能
|
transaction-attribute
|
(NotSupported | Supports | Required | RequiresNew | Mandatory | Never ) このローカル メソッドのトランザクション属性。指定されない場合、デフォルトのトランザクション属性が使用される。このタグを付けたメソッドが、ローカル クラス上に生成される。
|
省略可能
|
weblogic-ejb-ql
|
デプロイメント記述子のものと同じ、Weblogic EJB クエリ言語 (QL) リクエスト。注意 : このリクエストが必要になる場合、EJB QL と WebLogic EJB QL を二重引用符で囲む必要がある。
|
省略可能
|
@ejbgen:foreign-jms-provider
使用場所 : クラス
適用対象 : メッセージ駆動型 Bean
属性
|
説明
|
必須/省略可能
|
connection-factory-jndi-name
|
接続ファクトリの JNDI 名。
|
省略可能
|
initial-context-factory
|
初期 JNDI コンテキスト ファクトリ。
|
省略可能
|
provider-url
|
外部 JMS プロバイダの URL。
|
必須
|
@ejbgen:jar-settings
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須/省略可能
|
create-tables
|
テーブルを作成するかどうか。
|
省略可能
|
disable-warning
|
ejbc の実行時に無効化する警告のカンマ区切りのリスト。
|
省略可能
|
ejb-client-jar
|
生成するクライアント JAR の名前を指定する。複数の EJB にこのタグがある場合、指定された JAR ファイルの 1 つだけがデプロイメント記述子に含まれる。
|
省略可能
|
enable-bean-class-redeploy
|
(True|False) モジュール全体を再デプロイすることなくこの EJB を再デプロイできるかどうかを指定する。
|
省略可能
|
@ejbgen:jndi-name
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須/省略可能
|
local
|
この EJB のローカル JNDI 名。指定されない場合、いずれのローカル インタフェースも生成されない。
|
省略可能
|
remote
|
この EJB のリモート JNDI 名。指定されない場合、いずれのリモート インタフェースも生成されない。
|
省略可能
|
@ejbgen:local-home-method
使用場所 : メソッド
適用対象 : エンティティ Bean とセッション Bean
属性
|
説明
|
必須/省略可能
|
is-idempotent
|
(True|False) このメソッドが多重呼び出し不変かどうかを指定する。
|
省略可能
|
isolation-level
|
(TransactionSerializable|TransactionReadCommitted|TransactionReadUncommitted|TransactionRepeatableRead) このメソッドのトランザクション アイソレーションのタイプを指定する。
|
省略可能
|
ordering-number
|
(0..n) このメソッドが生成されたクラス内に置かれるべき順番を指定する。省略可能
|
|
roles
|
このメソッドを呼び出すことを許可されているロールのカンマ区切りのリスト。
|
省略可能
|
transaction-attribute
|
このローカル メソッドのトランザクション属性。 指定されない場合、デフォルトのトランザクション属性が使用される。このタグを付けたメソッドが、ローカル クラス上に生成される。
|
省略可能
|
@ejbgen:local-method
使用場所 : メソッド
適用対象 : エンティティ Bean とセッション Bean
属性
|
説明
|
必須/省略可能
|
is-idempotent
|
(True | False ) このメソッドが多重呼び出し不変かどうか。
|
省略可能
|
isolation-level
|
このメソッドのトランザクション アイソレーションのタイプ。
|
省略可能
|
ordering-number
|
(0..n ) このメソッドが生成されたクラス内に置かれるべき順番。
|
省略可能
|
roles
|
このメソッドを呼び出すことを許可されているロールのカンマ区切りのリスト。
|
省略可能
|
transaction-attribute
|
(NotSupported | Supports | Required | RequiresNew | Mandatory | Never ) このローカル メソッドのトランザクション属性。 指定されない場合、デフォルトのトランザクション属性が使用される。 このタグを付けたメソッドが、ローカル クラス上に生成される。
|
省略可能
|
@ejbgen:message-driven
使用場所 : クラス
適用対象 : メッセージ駆動型 Bean
属性
|
説明
|
必須/省略可能
|
acknowledge-mode
|
(auto-acknowledge | dups-ok-acknowledge ) 確認応答モード。
|
省略可能
|
clients-on-same-server
|
(True|False) クライアントが同じサーバ上の EJB と連結されるかどうかを指定する。
|
省略可能
|
create-as-principal-name
|
ejbCreate が匿名プリンシパルで実行される場合に使用するプリンシパルの名前。
|
省略可能
|
default-transaction
|
詳細なトランザクション属性を設定しない、すべてのメソッドに適用されるトランザクション属性。
|
省略可能
|
destination-jndi-name
|
送り先の JNDI 名。
|
可能
|
destination-type
|
(javax.jms.Queue | javax.jms.Topic ) JMS 送り先タイプ。
|
必須
|
dispatch-policy
|
この Bean のディスパッチ ポリシー キューを指定する。
|
省略可能
|
durable
|
(True | False ) destination-type が Topic の場合、この属性を True に設定するとサブスクリプションが恒久になる。
|
省略可能
|
ejb-name
|
このメッセージ駆動型 Bean の名前。
|
可能
|
enable-call-by-reference
|
(True | False ) コンテナがこの EJB を参照で呼び出すかどうか。
|
省略可能
|
initial-beans-in-free-pool
|
フリー プール内の Bean の初期数。
|
省略可能
|
jms-client-id
|
この EJB のクライアント ID。
|
省略可能
|
jms-polling-interval-seconds
|
JMS 送り先に再接続しにいく間隔の秒数。
|
省略可能
|
max-beans-in-free-pool
|
フリー プール内の Bean の最大数。
|
省略可能
|
message-selector
|
JMS メッセージ セレクタ。
|
省略可能
|
passivate-as-principal-name
|
ejbPassivate が匿名プリンシパルで実行される場合に使用するプリンシパルの名前。
|
省略可能
|
remove-as-principal-name
|
ejbRemove が匿名プリンシパルで実行される場合に使用するプリンシパルの名前。
|
省略可能
|
run-as
|
この EJB のロール名を指定する。
|
省略可能
|
run-as-identity-principal
|
ロールを複数プリンシパルにマップする場合のプリンシパル名を指定する。
注意 : この属性は WebLogic Server 8.1 で非推奨になった。
|
省略可能
|
transaction-type
|
(Bean|Container) この EJB のトランザクションがどこで管理されるのかを指定する。
|
省略可能
|
trans-timeout-seconds
|
トランザクションのタイムアウト (秒数)。
|
省略可能
|
use-caller-identity
|
(True | False ) この EJB が呼び出し側の ID を使用するかどうか。
|
省略可能
|
@ejbgen:method-isolation-level-pattern
使用場所 : クラス
適用対象 : すべての Bean
属性
|
説明
|
必須/省略可能
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
isolation-level
|
パターン タグで指定されるメソッドのアイソレーション レベル。
|
必須
|
pattern
|
このアイソレーション レベルを受け取るすべてのメソッドに一致するパターン ("*" など)。
|
必須
|
@ejbgen:method-permission-pattern
使用場所 : クラス
適用対象 : すべての Bean
属性
|
説明
|
必須/省略可能
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
interface
|
(Home | Remote | LocalHome | Local ) このパーミッション パターンが適用されるインタフェース。
|
省略可能
|
itf
|
(Home|Remote|LocalHome|Local) このパーミッション パターンが適用されるインタフェースを指定する。
|
省略可能
|
pattern
|
このアイソレーション レベルを受け取るすべてのメソッドに一致するパターン ("*" など)。
|
必須
|
roles
|
パターン タグで指定されたメソッドのロールのカンマ区切りのリスト。
|
必須
|
@ejbgen:relation
使用場所 : クラス
適用対象 : エンティティ Bean
属性
|
説明
|
必須/省略可能
|
cascade-delete
|
(True | False )
|
省略可能
|
cmr-field
|
この関係を格納する cmr フィールド。 このフィールドは省略可能である。これを指定しない場合、関係は一方向となる。これを指定する場合には、fk-column 属性も合わせて指定する。
|
省略可能
|
db-cascade-delete
|
(True | False ) カスケード削除で、基盤の DBMS に組み込みのカスケード削除機能を使用するかどうか。
|
省略可能
|
fk-column
|
少なくとも 1 つの一方向関係のある場合のみ必要になる。一方向以外の EJB では、相手の主キーを保持するカラムを宣言しなければならない。
|
省略可能
|
foreign-key-table
|
foreign-key を含む DBMS テーブルの名前。
|
省略可能
|
join-table
|
多対多関係のみで必要になる。この関係を含む結合テーブルを格納するのに使用する既存テーブルの名前にすること。複合主キーを使用する場合、これに関わる一連の外部キーをカンマで区切って指定する必要がある。
|
省略可能
|
multiplicity
|
(One | Many )
|
必須
|
name
|
関係の名前。ロールの関係の両端で同じ名前を使用するようにする (一方向でもこの制約が同様に適用される)。
|
必須
|
primary-key-table
|
primary-key を含む DBMS テーブルの名前。
|
省略可能
|
role-name
|
このロールの名前 (たとえば、ParentHasChildren )。指定されない場合、EJBGen が代わりにこれを生成する。関係を継続的に使用しようとする場合には、role-name を指定する必要がある。
|
省略可能
|
target-ejb
|
この関係のターゲット EJB 名。
|
必須
|
@ejbgen:relationship-caching-element
使用場所 : メソッド
適用対象 : エンティティ Bean
属性
|
説明
|
必須/省略可能
|
caching-name
|
期待されるリレーションシップ キャッシングの名前。
|
必須
|
cmr-field
|
CMR フィールド名のカンマ区切りのリスト。
|
必須
|
group-name
|
CMR フィールドに対してロードされるグループ名。
|
省略可能
|
id
|
子がこの要素を親として使用することを許可する ID。「EJBGen タグによるリレーションシップ キャッシングの指定」を参照。
|
省略可能
|
parent-id
|
この要素の親 ID。
|
省略可能
|
@ejbgen:remote-home-method
使用場所 : メソッド
適用対象 : エンティティ Bean とセッション Bean
属性
|
説明
|
必須/省略可能
|
is-idempotent
|
(True|False) このメソッドが多重呼び出し不変かどうかを指定する。省略可能
|
省略可能
|
isolation-level
|
(TransactionSerializable|TransactionReadCommitted|TransactionReadUncommitted|TransactionRepeatableRead) このメソッドのトランザクション アイソレーションのタイプを指定する。
|
省略可能
|
ordering-number
|
(0..n) このメソッドが生成されたクラス内に置かれるべき順番を指定する。
|
省略可能
|
roles
|
このメソッドを呼び出すことを許可されているロールのカンマ区切りのリスト。
|
省略可能
|
transaction-attribute
|
このリモート メソッドのトランザクション属性。指定されない場合、デフォルトのトランザクション属性が使用される。このタグを付けたメソッドが、リモート クラス上に生成される。
|
省略可能
|
@ejbgen:remote-method
使用場所 : メソッド
適用対象 : エンティティ Bean とセッション Bean
属性
|
説明
|
必須/省略可能
|
is-idempotent
|
(True | False) このメソッドが多重呼び出し不変かどうか。
|
省略可能
|
isolation-level
|
このメソッドのトランザクション アイソレーションのタイプ。
|
省略可能
|
ordering-number
|
(0..n) このメソッドが生成されたクラス内に置かれるべき順番。
|
省略可能
|
roles
|
このメソッドを呼び出すことを許可されているロールのカンマ区切りのリスト。
|
省略可能
|
transaction-attribute
|
(NotSupported | Supports | Required | RequiresNew | Mandatory | Never) このローカル メソッドのトランザクション属性。指定されない場合、デフォルトのトランザクション属性が使用される。このタグを付けたメソッドが、ローカル クラス上に生成される。
|
省略可能
|
@ejbgen:resource-env-ref
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須/省略可能
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
jndi-name
|
リソースの JNDI 名。
|
省略可能
|
name
|
リソース環境参照の名前。
|
必須
|
type
|
リソース環境参照のタイプ (javax.jms.Queue など)
|
必須
|
@ejbgen:resource-ref
使用場所 : クラス
適用対象 : すべての Bean タイプ
l
属性
|
説明
|
必須/省略可能
|
auth
|
(Application | Container)
|
必須
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
jndi-name
|
リソースの JNDI 名。
|
必須
|
name
|
リソース名。
|
必須
|
sharing-scope
|
(Shareable | Unshareable)
|
省略可能
|
type
|
リソースのタイプ (javax.sql.DataSource など)。
|
必須
|
@ejbgen:role-mapping
使用場所 : クラス
適用対象 : すべての Bean タイプ
注意 :
属性
|
説明
|
必須/省略可能
|
externally-defined
|
(True | False) このロールが外部で定義される場合は True。
|
省略可能
|
global-role
|
(True | False) このロールがグローバルの場合は True。
注意 : global-role は WebLogic Server 7.0 で非推奨となった。
|
省略可能
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
principals
|
このロールのプリンシパル名 (カンマで区切る)。
|
省略可能
|
role-name
|
ロール名。
|
必須
|
@ejbgen:security-role-ref
使用場所 : メソッド
適用対象 : エンティティ Bean とセッション Bean
属性
|
説明
|
必須/省略可能
|
id
|
このタグの ID (タグの継承でのみ使用する)。
|
省略可能
|
role-link
|
定義されたセキュリティ ロールへの参照。
|
省略可能
|
role-name
|
セキュリティ ロール名。
|
必須
|
@ejbgen:select
使用場所 : メソッド
適用対象 : エンティティ Bean
属性
|
説明
|
必須/省略可能
|
caching-name
|
期待されるリレーションシップ キャッシングの名前。
|
省略可能
|
ejb-ql
|
この選択メソッドを定義する EJB-QL。
メソッド名を ejbSelect から始めること。
|
必須
|
group-name
|
クエリのグループの名前。
|
省略可能
|
include-updates
|
(True | False ) 現在のトランザクション中の更新を必ずクエリの結果に反映するかどうか。
|
省略可能
|
max-elements
|
多値クエリによって返される要素の最大数。
|
省略可能
|
ordering-number
|
(0..n ) このメソッドが生成されたクラス内に置かれるべき順番。
|
省略可能
|
result-type-mapping
|
(Remote | Local ) 返されたオブジェクトを EJBLocalObject または EJBObject にマップするかどうか。
|
省略可能
|
sql-select-distinct
|
(True|False) 生成された SQL SELECT に DISTINCT 修飾子が含まれるかどうかを指定する。
|
省略可能
|
weblogic-ejb-ql
|
デプロイメント記述子のものと同じ、Weblogic EJB QL リクエスト。
注意 : このリクエストが必要になる場合、EJB QL と WebLogic EJB QL を二重引用符で囲む必要がある。
|
省略可能
|
@ejbgen:session
使用場所 : クラス
適用対象 : セッション Bean
属性
|
説明
|
必須/省略可能
|
allow-concurrent-calls
|
(True | False ) この EJB に対し同時呼び出しを許可するかどうか。
|
省略可能
|
allow-remove-during-transaction
|
(True|False) トランザクションの過程で remove() を呼び出せるかどうかを指定する。
|
省略可能
|
bean-load-algorithm
|
この Bean のレプリカ間でロード バランシングを行うためのアルゴリズム。
|
省略可能
|
cache-type
|
(NRU|LRU) このステートフル セッション Bean のキャッシュのタイプを指定する。
|
省略可能
|
call-router-class-name
|
ホーム メソッド呼び出しのルーティングに使用するクラス名。
|
省略可能
|
clients-on-same-server
|
(True|False) クライアントが同じサーバ上の EJB と連結されるかどうかを指定する。
|
省略可能
|
create-as-principal-name
|
ejbCreate が匿名プリンシパルで実行される場合に使用するプリンシパルの名前。
|
省略可能
|
default-transaction
|
詳細なトランザクション属性を設定しない、すべてのメソッドに適用されるトランザクション属性。
|
省略可能
|
dispatch-policy
|
Bean の JMS ディスパッチ ポリシー キュー。
|
省略可能
|
ejb-name
|
このセッション Bean の名前。
|
必須
|
enable-call-by-reference
|
(True | False ) コンテナがこの EJB を参照で呼び出すかどうか。
|
省略可能
|
home-call-router-class-name
|
ホーム メソッド呼び出しのルーティングに使用するクラス。
|
省略可能
|
home-is-clusterable
|
(True | False ) この Bean をクラスタ内の複数のサーバにデプロイできるかどうか。
|
省略可能
|
home-load-algorithm
|
(RoundRobin | Random | WeightBased ) このホームのレプリカ間でロード バランシングを行うためのアルゴリズム。
|
省略可能
|
idle-timeout-seconds
|
ある EJB がキャッシュ内に置かれる最長の時間。
|
省略可能
|
initial-beans-in-free-pool
|
フリー プール内の Bean の初期数。
|
省略可能
|
is-clusterable
|
(True | False ) この Bean がクラスタ対応かどうか。
|
省略可能
|
load-algorithm
|
(RoundRobin |Random | WeightBased ) このホームのレプリカ間でバランシングを行うためのアルゴリズム。
|
省略可能
|
max-beans-in-cache
|
キャッシュ内の Bean の最大数。
|
省略可能
|
max-beans-in-free-pool
|
フリー プール内の Bean の最大数。
|
省略可能
|
methods-are-idempotent
|
(True | False ) このステートレス セッション Bean のメソッドが多重呼び出し不変であるかどうか。
|
省略可能
|
passivate-as-principal-name
|
ejbPassivate が匿名プリンシパルで実行される場合に使用するプリンシパルの名前。
|
省略可能
|
persistent-store-dir
|
パッシベーションされた Bean が格納されるディレクトリ。
|
省略可能
|
remove-as-principal-name
|
ejbRemove が匿名プリンシパルで実行される場合に使用するプリンシパルの名前。
|
省略可能
|
replication-type
|
(InMemory | None ) クラスタ内でステートフル セッション Bean をレプリケートする方法。
|
省略可能
|
run-as
|
この EJB の role-name を指定する。
|
省略可能
|
run-as-identity-principal
|
ロールを複数プリンシパルにマップする場合のプリンシパル名を指定する。
注意 : WebLogic Server 8.1 では非推奨になっている。
|
省略可能
|
transaction-type
|
(Bean | Container ) この EJB のトランザクションが Bean 管理であるかコンテナ管理であるか。
|
省略可能
|
trans-timeout-seconds
|
トランザクション タイムアウトの秒数。
|
省略可能
|
type
|
(Stateless | Stateful ) セッション Bean のタイプ。この属性が指定されない場合、EJBGen は各自のクラスの ejbCreate() メソッドを調べることによってこのタイプを正確に推測する。
|
省略可能
|
use-caller-identity
|
(True | False ) この EJB が呼び出し側の ID を使用するかどうか。
|
省略可能
|
@ejbgen:value-object
使用場所 : クラス
適用対象 : すべての Bean タイプ
属性
|
説明
|
必須/省略可能
|
reference
|
(Local | Value ) 他の EJB のクラスにアクセスする時に、Value オブジェクト クラスがどのオブジェクトを参照すべきかを指定する。
|
必須
|