ORACLE JAPAN Server Release 7.0

 

  |  

  WebLogic Server ホーム   |     エンタープライズ JavaBeans   |   前へ   |   次へ   |   目次   |   PDF 版

weblogic-ejb-jar.xml 文書型定義

 

以下の節では、weblogic 固有の XML 文書型定義(DTD)ファイル、weblogic-ejb-jar.xml ファイルの EJB 5.1 および EJB 6.0 デプロイメント記述子要素について説明します。これらの定義を使用して、EJB デプロイメントを構成する WebLogic 固有の weblogic-ejb-jar.xml ファイルを作成します。

注意: 6.x バージョンの WebLogic Server では、6.0 デプロイメント記述子を使用してください。

 


EJB デプロイメント記述子

EJB デプロイメント記述子は、エンタープライズ Bean の構造およびアセンブリ情報を格納します。この情報を指定するには、3 つの EJB XML DTD ファイルのデプロイメント記述子に値を指定します。ファイルは次のとおりです。

この 3 つの XML ファイルを EJB および他のクラスと一緒にデプロイ可能なコンポーネント、通常は ejb.jar という JAR ファイルにパッケージ化します。

ejb-jar.xml ファイルは、Sun Microsystems の ejb.jar.xml ファイルのデプロイメント記述子に基づいています。その他の 2 つの XML ファイルは weblogic 固有のファイルで、weblogic-ejb-jar.xmlweblogic-cmp-rdbms-jar.xml のデプロイメント記述子に基づいています。

 


DOCTYPE ヘッダ情報

XML デプロイメント ファイルの編集、作成時に、デプロイメント ファイルに合わせて正しい DOCTYPE ヘッダを指定することが重要です。特に、DOCTYPE ヘッダ内部に不正な PUBLIC 要素を使用すると、原因究明が困難なパーサ エラーになることがあります。

WebLogic Server 固有の weblogic-ejb-jar.xml ファイルの PUBLIC 要素には、次のようにテキストを指定する必要があります。

XML ファイル

PUBLIC 要素の文字列

weblogic-ejb-jar.xml

'-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN' 'http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd'

weblogic-ejb-jar.xml

'-//BEA Systems, Inc.//DTD WebLogic 5.1.0 EJB//EN'

'http://www.bea.com/servers/wls510/dtd/weblogic-ejb-jar.dtd'

Sun Microsystems 固有の ejb-jar.xml ファイルの PUBLIC 要素には、次のようにテキストを指定する必要があります。

XML ファイル

PUBLIC 要素の文字列

ejb-jar.xml

'-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' '

ejb-jar.xml

'-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN'

'http://www.java.sun.com/j2ee/dtds/ejb-jar_1_1.dtd'

たとえば、weblogic-ejb-jar.xml ファイルの DOCTYPE ヘッダは次のようになります。

<!DOCTYPE weblogic-ejb-jar PUBLIC
'-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN' 'http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd'>

XML の解析ユーティリティ(ejbc など)でヘッダ情報が不正な XML ファイルを解析すると、次のようなエラー メッセージが表示されることがあります。

SAXException: This document may not have the identifier 'identifier_name'

identifier_name には通常、PUBLIC 要素内の不正な文字列が表示されます。

検証用 DTD(Document Type Definitions : 文書型定義)

XML ファイルの内容および要素の配置は、使用する各ファイルの文書型定義(DTD)に従っている必要があります。WebLogic Server では、XML デプロイメント ファイルの DOCTYPE ヘッダ内部に埋めこまれた DTD は無視され、代わりにサーバと一緒にインストールされた DTD の場所が使用されます。ただし、DOCTYPE ヘッダ情報には、パーサ エラーを避けるために、有効な URL 構文を指定する必要があります。

注意: ほとんどのブラウザでは、.dtd ファイルの内容は表示されません。DTD ファイルの内容をブラウザで見るには、リンクをテキスト ファイルとして保存し、テキスト エディタで開いて表示します。

weblogic-ejb-jar.xml

以下のリンクでは、WebLogic Server で使用される weblogic-ejb-jar.xml デプロイメント ファイル用の新しいパブリック DTD の場所が示されています。

ejb-jar.xml

以下のリンクでは、WebLogic Server で使用される ejb-jar.xml デプロイメント ファイル用のパブリック DTD の場所が示されています。

注意: ejb-jar.xml デプロイメント記述子の説明については、該当する JavaSoft EJB 仕様を参照してください。

 


6.0 の weblogic-ejb-jar.xml デプロイメント記述子ファイルの構造

WebLogic Server 6.0 の weblogic-ejb-jar.xml デプロイメント記述子ファイルには、WebLogic Server 固有の要素を記述します。どちらのバージョンのデプロイメント記述子も EJB コンテナで使用できますが、weblogic-ejb-jar.xml には、WebLogic Server 6.0 バージョンと WebLogic Server バージョン 5.1 の間で違いがあります。

WebLogic Serve 6.0 の weblogic-ejb-jar.xml には、ステートフル セッション EJB レプリケーションの有効化、エンティティ EJB ロック動作のコンフィグレーション、メッセージ駆動型 Bean への JMS キューとトピック名の割り当てを行うための要素が含まれています。

WebLogic Server 6.0 の weblogic-ejb-jar.xml の最上位要素は次のとおりです。

 


6.0 の weblogic-ejb-jar.xml デプロイメント記述子要素

 


allow-concurrent-calls

指定できる値 :

true | false

デフォルト値 :

false

要件 :

ステートフル セッション Bean インスタンスによるメソッド呼び出しの処理中に、同時に他のメソッド呼び出しがサーバに送信されたときに、サーバが RemoteException を送出すること。

親要素 :

weblogic-enterprise-bean
   stateful-session-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

allow-concurrent-calls 要素は、ステートフル セッション Bean インスタンスがメソッドの同時呼び出しを許可するかどうかを指定します。デフォルトでは、allows-concurrent-callsfalse です。ただし true に設定すると、EJB コンテナはメソッドの同時呼び出しをブロックするため、前の呼び出しが完了してから次のメソッドが呼び出されるようになります。

stateful-session-descriptorを参照してください。

 


cache-type

指定できる値 :

NRU | LRU

デフォルト値 :

NRU

要件 :


親要素 :

weblogic-enterprise-bean
   stateful-session-cache

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

cache-type 要素は、EJB をキャッシュから削除する順序を指定します。値は次のとおりです。

次の例では、cache-type 要素の構造を示します。

<stateful-session-cache> 
<cache-type>NRU</cache-type>
</stateful-session-cache>

 


connection-factory-jndi-name

指定できる値 :

有効な名前

デフォルト値 :

config.xmlweblogic.jms.MessageDrivenBeanConnectionFactory

要件 :

ステートフル セッション Bean インスタンスによるメソッド呼び出しの処理中に、同時に他のメソッド呼び出しがサーバに送信されたときに、サーバが RemoteException を送出すること。

親要素 :

weblogic-enterprise-bean
   message-driven-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

connection-factory-jndi-name 要素は、キューおよびトピックを作成するためにメッセージ駆動型 Bean がルックアップする JMS 接続ファクトリの JNDI 名を指定します。この要素を指定しなかった場合、config.xml.weblogic.jms.MessageDrivenBeanConnectionFactory がデフォルトになります。

次の例では、connection-factory-jndi-name 要素の構造を示します。

<message-driven-descriptor> 
<connection-factory-jndi-name>weblogic.jms.MessageDrivenBean
ConnectionFactory
</connection-factory-jndi-name>
</message-driven-descriptor>

 


concurrency-strategy

指定できる値 :

Exclusive | Database | ReadOnly

デフォルト値 :

Database

要件 :

省略可能。エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       entity-cache

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

concurrency-strategy 要素は、コンテナがエンティティ Bean への同時アクセスを管理する方法を指定します。以下の 3 つの値のいずれかに設定します。

Exclusive および Database のロック動作の詳細については、エンティティ EJB のロック サービスを参照してください。read-only エンティティ EJB の詳細については、read-only マルチキャストの無効化を参照してください。

次の例では、AccountBean クラスを読み取り専用のエンティティ EJB として指定します。

<weblogic-enterprise-bean>
	<ejb-name>AccountBean</ejb-name>
	<entity-descriptor>
		<entity-cache>
			<concurrency-strategy>ReadOnly</concurrency-strategy>
		</entity-cache>
	</entity-descriptor>
</weblogic-enterprise-bean>

 


db-is-shared

指定できる値 :

true | false

デフォルト値 :

true

要件 :

省略可能。エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

db-is-shared 要素はエンティティ Bean に対してのみ有効です。true に設定すると、WebLogic Server では、EJB データがトランザクションで変更された可能性があると見なし、各トランザクションの開始時にデータを再ロードします。false に設定すると、WebLogic Server では、永続ストレージの EJB データに排他的にアクセスすると見なされます。詳細については、db-is-shared を使用した ejbLoad() の呼び出しの制限を参照してください。

persistenceを参照してください。

 


delay-updates-until-end-of-tx

指定できる値 :

true | false

デフォルト値 :

true

要件 :

省略可能。エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

トランザクションの完了時にトランザクションですべての Bean の永続ストレージを更新するには、delay-updates-until-end-of-tx 要素を true(デフォルト)に設定します。通常、この設定によって不要な更新を防ぐことができるため、パフォーマンスが向上します。ただし、データベース トランザクション内のデータベース更新の順序は保持されません。

データベースがアイソレーション レベルとして TRANSACTION_READ_UNCOMMITTED を使用している場合は、進行中のトランザクションに関する中間結果を他のデータベースのユーザに表示することもできます。この場合、delay-updates-until-end-of-txfalse に設定して、各メソッド呼び出しの完了時に Bean の永続ストレージを更新するように指定します。詳細については、エンティティ EJB に対する ejbLoad() と ejbStore() の動作を参照してください。

注意: delay-updates-until-end-of-tx を false に設定しても、各メソッド呼び出しの後にデータベース更新が「コミットされた」状態になるわけではありません。更新はデータベースに送信されるだけです。更新は、トランザクションの完了時にのみデータベースにコミットまたはロールバックされます。

次の例では、delay-updates-until-end-of-tx スタンザを示します。

<entity-descriptor>
	<persistence>
		<delay-updates-until-end-of-tx>false</delay-updates-until-end-of-tx>
	</persistence>
</entity-descriptor>

 


description

指定できる値 :

なし

デフォルト値 :

なし

要件 :

なし

親要素 :

weblogic-enterprise-bean,
   transaction-isolation
       method

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

description 要素は、親要素を示すテキストの指定に使用します。

次の例では、description 要素を指定します。

 


destination-jndi-name

指定できる値 :

有効な JNDI 名

デフォルト値 :

なし

要件 :

message-driven-descriptor で必須。

親要素 :

weblogic-enterprise-bean
   message-driven-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

destination-jndi-name 要素は、WebLogic Server JNDI ツリーにデプロイされている実際の JMS キューまたはトピックにメッセージ駆動型 Bean を関連付けるために使用する JNDI 名を指定します。

message-driven-descriptorを参照してください。

 


ejb-name

指定できる値 :

ejb-jar.xml で定義した EJB 名

デフォルト値 :

なし

要件 :

method スタンザで必須。この名前は、NMTOKEN の命名規則に準拠しなければならない。

親要素 :

weblogic-enterprise-bean
   method

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

ejb-name は、WebLogic Server がアイソレーション レベルのプロパティに適用する EJB の名前を指定します。この名前は、ejb-jar ファイルのデプロイメント記述子で割り当てます。名前は、同じ ejb.jar ファイル内のエンタープライズ Bean の名前の中で一意でなければなりません。エンタープライズ Bean のコードは名前に左右されないので、アプリケーション アセンブリ処理中に名前を変更してもエンタープライズ Bean の機能には影響しません。デプロイメント記述子の ejb-name と、デプロイヤがエンタープライズ Bean のホームに割り当てる JNDI 名との間には、組み込みの関係はありません。

methodを参照してください。

 


ejb-reference-description

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   reference-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

ejb-reference-description 要素は、Bean によって参照される、WebLogic Server における EJB の JNDI 名を ejb-reference 要素にマップします。

ejb-reference-description スタンザを次に示します。

<ejb-reference-description>
	<ejb-ref-name>AdminBean</ejb-ref-name>
		<jndi-name>payroll.AdminBean</jndi-name>
	</ejb-reference-description>

 


ejb-ref-name

指定できる値 :

なし

デフォルト値 :

なし

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   reference-description
       ejb-reference-description

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

ejb-ref-name 要素はリソース参照名を指定します。この要素は、EJB プロバイダが ejb-jar.xml デプロイメント ファイル内に配置する参照です。

ejb-ref-name スタンザを次に示します。

<reference-descriptor>
	<ejb-reference-description>
		<ejb-ref-name>AdminBean</ejb-ref-name>
		<jndi-name>payroll.AdminBean</jndi-name>
	</ejb-reference-description>
</reference-descriptor>

 


ejb-local-reference-description

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   reference-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

ejb-local-reference-description 要素は、Bean が ejb-local ref で参照する WebLogic Server の EJB の JNDI 名をマップします。

次の例では、ejb-local-reference-description 要素を示します。

<ejb-local-reference-description>
	<ejb-ref-name>AdminBean</ejb-ref-name>
	<jndi-name>payroll.AdminBean</jndi-name>
</ejb-local-reference-description>

 


enable-call-by-reference

指定できる値 :

true | false

デフォルト値 :

true

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   reference-descriptor

       ejb-reference-description

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

デフォルトでは、同じサーバから呼び出された EJB メソッドは引数を参照で渡す。パラメータはコピーされないので、これによってメソッド呼び出しのパフォーマンスが向上します。

enable-call-by-referencefalse に設定すると、EJBE 1.1 の仕様に従って EJB メソッドへのパラメータがコピーされ(値で渡され)ます。EJB がリモートで(同じサーバ以外から)呼び出される場合は、常に値で渡す必要があります。

次の例では、EJB メソッドが値で渡すことができるようになります。

<weblogic-enterprise-bean>
	<ejb-name>AccountBean</ejb-name>
	...
	<enable-call-by-reference>false</enable-call-by-reference>
</weblogic-enterprise-bean>

 


entity-cache

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

entity-cache スタンザは省略可能。エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

entity-cache 要素は、WebLogic Server 内のエンティティ EJB インスタンスのキャッシュに使用する以下のオプションを定義します。

WebLogic Server で使用可能なキャッシュ サービスについては、WebLogic Server における EJB のライフサイクルを参照してください。

<entity-descriptor>
	<entity-cache>
		<max-beans-in-cache>...</max-beans-in-cache>
		<idle-timeout-seconds>...</idle-timeout-seconds>
		<read-timeout-seconds>...<read-timeout-seconds>
		<concurrency-strategy>...</concurrency-strategy>
	</entity-cache>
	<lifecycle>...</lifecycle>
	<persistence>...</persistence>
	<entity-clustering>...</entity-clustering>
</entity-descriptor>

 


entity-clustering

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。クラスタ内のエンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

entity-clustering 要素は、以下のオプションを使用して、エンティティ Bean を WebLogic クラスタ内でレプリケートする方法をしています。

次の例では、entity-clustering スタンザの構造を示します。

<entity-clustering>
	<home-is-clusterable>true</home-is-clusterable>
	<home-load-algorithm>random</home-load-algorithm>
	<home-call-router-class-name>beanRouter</home-call-router-class-name>
</entity-clustering>

 


entity-descriptor

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

.jar 内のエンティティ EJB ごとに 1 つの entity-descriptor スタンザが必須。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

entity-descriptor 要素は、エンティティ Bean に適用する以下のデプロイメント パラメータを指定します。

次の例では、entity-descriptor スタンザの構造を示します。

<entity-descriptor>
	<entity-cache>...</entity-cache>
	<lifecycle>...</lifecycle>
	<persistence>...</persistence>
	<entity-clustering>...</entity-clustering>
</entity-descriptor>

 


finders-load-bean

指定できる値 :

true | false

デフォルト値 :

true

要件 :

省略可能。CMP エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

finders-call-ejbload は、ファインダ メソッドの呼び出しによって Bean への参照が返されてから WebLogic Server が EJB をキャッシュにロードするかどうかを決定します。この要素を true に設定した場合、Bean への参照がファインダによって返されると、WebLogic Server はすぐにその Bean をキャッシュにロードします。この要素を false に設定した場合、WebLogic Server は、最初のメソッドが呼び出されるまで Bean を自動的にロードしません。この動作は、EJB 1.1 の仕様と一致しています。

次のエントリでは、ファインダ メソッドによって Bean への参照が返されたら、EJB が自動的に WebLogic Server キャッシュにロードされるように指定します。

<entity-descriptor>
	<persistence>
		<finders-load-bean>true</finders-load-bean>
	</persistence>
</entity-descriptor>

 


home-call-router-class-name

指定できる値 :

有効なルータ クラス名

デフォルト値 :

NULL

要件 :

省略可能。クラスタ内のエンティティ EJB、ステートフル セッション EJB、およびステートレス セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
        entity-clustering

および

weblogic-enterprise-bean
   stateful-session-descriptor
       stateful-session-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

home-call-router-class-name は、Bean メソッド呼び出しのルーティングに使用するカスタム クラスの名前を指定します。このクラスは weblogic.rmi.extensions.CallRouter() を実装する必要があります。指定すると、このクラスのインスタンスは各メソッド呼び出しの前に呼び出されます。ルータ クラスでは、メソッドのパラメータを基に、ルーティングするサーバを選択できます。このクラスは、サーバ名を返すか、または現在のロード アルゴリズムがサーバを選択する必要があることを示す null を返します。

entity-clusteringstateful-session-clusteringを参照してください。

 


home-is-clusterable

指定できる値 :

true | false

デフォルト値 :

true

要件 :

省略可能。クラスタ内のエンティティ EJB およびステートフル セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       entity-clustering

および

weblogic-enterprise-bean
   stateful-session-descriptor
       stateful-session-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

home-is-clusterabletrue の場合、クラスタ内の複数の WebLogic Server から EJB をデプロイできます。ホーム スタブの呼び出しは、Bean がデプロイされるサーバ間で負荷が分散されます。Bean のホスト サーバにアクセスできなかった場合、呼び出しは、Bean を提供する他のサーバに自動的にフェイルオーバします。

entity-clusteringを参照してください。

 


home-load-algorithm

指定できる値 :

round-robin | random | weight-based

デフォルト値 :

weblogic.cluster.defaultLoadAlgorithm の値

要件 :

省略可能。クラスタ内のエンティティ EJB およびステートフル セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       entity-clustering

および

weblogic-enterprise-bean
   stateful-session-descriptor
       stateful-session-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

home-load-algorithm では、EJB ホームのレプリカ間でのロード バランシングに使用するアルゴリズムを指定します。このプロパティを定義しない場合、WebLogic Server はサーバ プロパティ weblogic.cluster.defaultLoadAlgorithm で指定されたアルゴリズムを使用します。

home-load-algorithm は以下のいずれかの値に定義できます。

entity-clusteringstateful-session-clusteringを参照してください。

 


idle-timeout-seconds

指定できる値 :

1maxSecondsmaxSeconds は int の最大値。

デフォルト値 :

600

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       entity-cache

および

weblogic-enterprise-bean,
   stateful-session-descriptor,
       stateful-session-cache

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

idle-timeout-seconds では、ステートフル EJB がキャッシュに保持される最長時間を定義します。この時間を過ぎると、キャッシュ内の Bean の数が max-beans-in-cache で指定した値を超えている場合、WebLogic Server では Bean インスタンスが削除されます。削除された Bean インスタンスに対してはパッシベーションが行われます。詳細については、WebLogic Server における EJB のライフサイクルを参照してください。

次のエントリでは、max-beans-in-cache の値に達し、Bean がキャッシュに 20 分保持されている場合、ステートフル セッション EJB AccountBean が削除の対象になります。

<weblogic-enterprise-bean>
	<ejb-name>AccountBean</ejb-name>
	<stateful-session-descriptor>
		<stateful_session-cache>
			<max-beans-in-cache>200</max-beans-in-cache>
			<idle-timeout-seconds>1200</idle-timeout-seconds>
		</stateful-session-cache>
	</stateful-session-descriptor>
</weblogic-enterprise-bean>

 


initial-beans-in-free-pool

指定できる値 :

0maxBeans

デフォルト値 :

0

要件 :

省略可能。ステートレス セッション、エンティティ、およびメッセージ駆動型 EJB で有効。

親要素 :

weblogic-enterprise-bean,


stateless-session-descriptor, message-bean-descriptor, entity-descriptor

pool

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

initial-bean-in-free-pool の値を指定すると、WebLogic Server では、起動時に、すべての Bean クラスの指定した数の Bean インスタンスがフリー プールに生成されます。この方法で Bean インスタンスをフリー プールに格納しておくと、リクエストが来てから新しいインスタンスを生成せずに Bean に対する初期のリクエストが可能になるため、EJB の初期の応答時間が短縮されます。

poolを参照してください。

 


initial-context-factory

指定できる値 :

true | false

デフォルト値 :

weblogic.jndi.WLInitialContextFactory

要件 :

ステートフル セッション Bean インスタンスによるメソッド呼び出しの処理中に、同時に他のメソッド呼び出しがサーバに送信されたときに、サーバが RemoteException を送出すること。

親要素 :

weblogic-enterprise-bean
   message-driven-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

initial-context-factory 要素は、コンテナが接続ファクトリを作成するために使用する初期 contextFactory を指定します。initial-context-factory を指定しなかった場合、デフォルトは weblogic.jndi.WLInitialContextFactory になります。

次の例では、initial-context-factory 要素の構造を示します。

<message-driven-descriptor>
<initial-context-factory>weblogic.jndi.WLInitialContextFactory
</initial-context-factory>
</message-driven-descriptor>

 


invalidation-target

指定できる値 :


デフォルト値 :


要件 :

対象の ejb-name は読み出し専用エンティティ EJB でなければならないので、この要素は EJB 2.0 のコンテナ管理による永続性エンティティ EJB に対してのみ指定できる。

親要素 :

weblogic-enterprise-bean
   entity-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

invalidation-target 要素は、コンテナ管理による永続性エンティティ EJB が変更された場合に、無効化する読み出し専用エンティティ EJB を指定します。

次の例では、EJB が変更されると StockReaderEJB という EJB が無効化されるように指定します。

<invalidation-target>
	<ejb-name>StockReaderEJB</ejb-name>
</invalidation-target>

 


is-modified-method-name

指定できる値 :

有効なエンティティ EJB メソッド名

デフォルト値 :

なし

要件 :

省略可能。エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

is-modified-method-name では、EJB の保存時に WebLogic Server によって呼び出されるメソッドを指定します。指定したメソッドはブール値を返す必要があります。メソッドを指定しない場合、WebLogic Server では、EJB は常に変更されていると見なされて保存されます。

メソッドを指定して適切な値を設定すると、EJB 1.1 準拠の Bean、および Bean 管理の永続性を使用する Bean のパフォーマンスが向上します。ただし、メソッドの戻り値にエラーがあると、データに矛盾が発生する場合があります。詳細については、is-modified-method-name を使用した ejbStore() の呼び出しの制限(EJB 1.1 のみ)を参照してください。

注意: isModified() は、EJB 2.0 仕様に基づく 2.0 CMP エンティティ EJB では不要ですが、BMP および 1.1 CMP の EJB では有効です。コンテナ管理の永続性を使用して EJB 2.0 エンティティ Bean をデプロイする場合、WebLogic Server によって、変更されている EJB フィールドが自動的に検出され、そのフィールドのみが基底のデータストアに書き込まれます。

次の例では、EJB が変更されると semidivine という EJB メソッドが WebLogic Server に通知するように指定します。

<entity-descriptor>
	<persistence>
		<is-modified-method-name>semidivine</is-modified-method-name>
	</persistence>
</entity-descriptor>

 


isolation-level

指定できる値 :

Serializable | ReadCommitted | ReadUncommitted | RepeatableRead

デフォルト値 :

なし

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean,
   transaction-isolation

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

isolation-level は、すべての EJB データベース処理に対するアイソレーション レベルを指定します。isolation-level には以下の値を指定できます。

異なるアイソレーション レベルの関係と各アイソレーション レベルのサポートの詳細については、各データベースのマニュアルを参照してください。

transaction-isolationを参照してください。

 


jms-client-id

指定できる値 :

なし

デフォルト値 :

EJB に対する EJB 名。

要件 :

JMS トピックに対する恒久サブスクリプションに必須。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

jms-client-id 要素は、メッセージ駆動型 Bean に関連付けられるクライアント ID を指定します。JMS トピックに対する恒久サブスクリプションでは、この ID が必要です。

JMS の仕様では、JMS コンシューマは関連付けられる ID を指定できます。恒久サブスクリプションを使用するメッセージ駆動型 Bean では、関連付けられるクライアント ID が必要です。独立した接続ファクトリを使用する場合は、接続ファクトリにクライアント ID を設定できます。この場合、メッセージ駆動型 Bean はこのクライアント ID を使用します。

関連付けられるクライアント ID にクライアント ID がない場合、またはデフォルトの接続ファクトリを使用している場合は、メッセージ駆動型 Bean はクライアント ID として jms-client-id を使用します。

次の例は、jms-client-id 要素の使い方を示したものです。

<jms-client-id>MyClientID</jms-client-id>

 


jms-polling-interval-seconds

指定できる値 :

なし

デフォルト値 :

10 秒

要件 :

なし

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

jms-polling-interval-seconds 要素は、WebLogic Server が JMS 送り先への再接続を試みる間隔の秒数を決定します。

各メッセージ駆動型 Bean は、関連付けられている JMS 送り先をリスンします。JMS 送り先が別の WebLogic Server インスタンスまたは外部の JMS プロバイダに存在している場合、その JMS 送り先にアクセスできなくなることがあります。このような場合、EJB コンテナは、自動的に、JMS サーバへの再接続を試みます。JMS サーバが再び稼働したなら、メッセージ駆動型 Bean は再び JMS メッセージを受信できます。

異なるアイソレーション レベルの関係と各アイソレーション レベルのサポートの詳細については、各データベースのマニュアルを参照してください。

次の例は、jms-pollig-interval-seconds 要素の使い方を示したものです。

<jms-polling-interval-seconds>5</jms-polling-interval-seconds>

 


jndi-name

指定できる値 :

有効な JNDI 名

デフォルト値 :

なし

要件 :

resource-descriptionejb-reference-description で必須。

親要素 :

weblogic-enterprise-bean

および

weblogic-enterprise-bean
   reference-descriptor
       resource-description

および

weblogic-enterprise-bean
   reference-descriptor
       ejb-reference-description

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

jndi-name は、WebLogic Server で使用可能な実際の EJB、リソース、または参照の JNDI 名を指定します。

resource-descriptionejb-reference-descriptionを参照してください。

 


local-jndi-name

指定できる値 :

有効な JNDI 名

デフォルト値 :

なし

要件 :

Bean がローカル ホームを持つ場合には必須。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

local-jndi-name 要素は、Bean のローカル ホームの jndi-name を指定します。Bean がリモート ホームとローカル ホームを持つ場合は、それぞれのホームに 1 つずつの JNDI 名を指定する必要があります。

次の例では、local-jndi-name 要素の構造を示します。

<local-jndi-name>weblogic.jndi.WLInitialContext
</local-jndi-name>

 


lifecycle

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

lifecycle スタンザは省略可能。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor

および

weblogic-enterprise-bean

   stateful-session-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

lifecycle 要素は、WebLogic Server 内のステートフルおよびエンティティ EJB インスタンスのライフサイクルに関するオプションを定義します。現在、lifecycle 要素には、passivation-strategy という 1 つの要素だけがあります。

次の例では、lifecycle 要素の構造を示します。

<entity-descriptor>
	<lifecycle>
		<passivation-strategy>...</passivation-strategy>
	</lifecycle>
</entity-descriptor>

 


max-beans-in-cache

指定できる値 :

1maxBeans

デフォルト値 :

1000

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       entity-cache

および

weblogic-enterprise-bean
   stateful-session-descriptor
       stateful-session-cache

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

max-beans-in-cache 要素は、メモリに保持可能なこのクラスのオブジェクトの最大数を指定します。max-bean-in-cache の値に達すると、WebLogic Server では、最近クライアントに使用されていない EJB の一部に対してパッシベーションが行われます。また、エンティティ EJB のロック サービスで説明されているように、max-beans-in-cache の値は、EJB を WebLogic Server のキャッシュからいつ削除するかにも影響を与えます。

次の例では、WebLogic Server が AccountBean クラスのインスタンスを最大で 200 個キャッシュできるようにします。

<weblogic-enterprise-bean>
	<ejb-name>AccountBean</ejb-name>
	<entity-descriptor>
		<entity-cache>
			<max-beans-in-cache>200</max-beans-in-cache>
		</entity-cache>
	</entity-descriptor>
</weblogic-enterprise-bean>

 


max-beans-in-free-pool

指定できる値 :

0maxBeans

デフォルト値 :

max Int

要件 :

省略可能。ステートレス セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
stateless-session-descriptor,
pool

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

WebLogic Server は、すべてのステートレス セッション Bean およびメッセージ駆動型 Bean クラスに対して EJB のフリー プールを保持します。max-beans-in-free-pool 要素は、このフリー プールのサイズを定義します。デフォルトでは、max-beans-in-free-pool は無制限です。フリー プール内の Bean の最大数はメモリによってのみ制限されます。詳細については、メッセージ駆動型 Bean とステートレス セッション EJB との違いを参照してください。

poolを参照してください。

 


message-driven-descriptor

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :


親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

message-driven-descriptor 要素は、メッセージ駆動型 Bean を WebLogic Server の JMS 送り先に関連付けます。この要素は、以下のデプロイメント パラメータを指定します。

次の例では、message-driven-descriptor スタンザの構造を示します。

<message-driven-descriptor>
	<destination-jndi-name>...</destination-jndi-name>
</message-driven-descriptor>

 


method

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。複数の method スタンザを指定して複数の EJB メソッドをコンフィグレーションできる。

親要素 :

weblogic-enterprise-bean
   transaction-isolation

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

method 要素は、エンタープライズ Bean のホームまたはリモート インタフェースのメソッドあるいはメソッドのセットを定義します。

method スタンザには、以下の要素を指定できます。

<method>
	<description>...</description>
	<ejb-name>...</ejb-name>
	<method-intf>...</method-intf>
	<method-name>...</method-name>
	<method-params>...</method-params>
</method>

 


method-intf

指定できる値 :

Home | Remote

デフォルト値 :

なし

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   transaction-isolation
       method

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

method-intf は、WebLogic Server がアイソレーション レベル プロパティを適用する EJB インタフェースを指定します。この要素は、EJB のホームとリモート インタフェースで同じシグネチャを持つメソッドを区別する必要がある場合にのみ使用します。

methodを参照してください。

 


method-name

指定できる値 :

ejb-jar.xml で定義した EJB の名前 | *

デフォルト値 :

なし

要件 :

method スタンザで必須。

親要素 :

weblogic-enterprise-bean
   transaction-isolation
       method

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

method-name は、WebLogic Server がアイソレーション レベルのプロパティを適用する個々の EJB メソッドの名前を指定します。アスタリスク(*)を使用して EJB のホームおよびリモート インタフェースの全メソッドを指定します。

method-name を指定すると、そのメソッドが指定した ejb-name で使用可能になります。

methodを参照してください。

 


method-param

指定できる値 :

Java タイプのメソッド パラメータの完全修飾名

デフォルト値 :

なし

要件 :

method-params で必須。

親要素 :

weblogic-enterprise-bean

   transaction-isolation
       method
           method-params

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

method-param 要素には、Java タイプのメソッド パラメータの完全修飾名を指定します。

method-paramsを参照してください。

 


method-params

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean

   transaction-isolation
       method

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

method-params スタンザには、各メソッド パラメータの Java タイプ名を定義する 1 つまたは複数の要素があります。

method-params スタンザには、次のように 1 つまたは複数の method-param 要素が含まれます。

<method-params>
	<method-param>java.lang.String</method-param>
	...
</method-params>

 


passivation-strategy

指定できる値 :

default | transaction

デフォルト値 :

default

要件 :

省略可能。エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       lifecycle

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

passivation-strategy 要素は、WebLogic Server がキャッシュにエンティティ EJB の中間的な状態を保持するかどうかを決定します。詳細については、エンティティ EJB のロック サービスを参照してください。

次の例では、WebLogic Server のロック動作およびキャッシュ動作に戻します。

<entity-descriptor>
	<lifecycle>
		<passivation-strategy>default</passivation-strategy>
	</lifecycle>
</entity-descriptor>

 


persistence

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

コンテナ管理の永続性サービスを使用するエンティティ EJB でのみ必須。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

persistence 要素は、WebLogic Server のエンティティ EJB に対する永続性タイプ、トランザクション コミット動作、ejbLoad() 動作、および ejbStore() 動作を決定するプロパティを定義します。

次の例では、persistence 要素の構造を指定します。

<entity-descriptor>
	<persistence>
		<is-modified-method-name>...</is-modified-method-name>
		<delay-updates-until-end-of-tx>...</delay-updates-until-end-of-tx>
		<finders-load-beand>...</finders-load-bean>
		<persistence-type>...</persistence-type>
		<db-is-shared>false</db-is-shared>
		<persistence-use>...</persistence-use>
	</persistence>
</entity-descriptor>

 


persistence-type

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

コンテナ管理の永続性サービスを使用するエンティティ EJB でのみ必須。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

persistence-type 要素は、エンティティ EJB で使用可能な永続性サービスを定義します。複数の永続性サービスを持つ EJB をテストするために、weblogic-ejb-jar.xml で複数の persistence-type スタンザを定義できます。デプロイメントでは、persistence-use で定義した永続性タイプのみが実際に使用されます。

persistence-type には、永続性タイプを示す要素がいくつか含まれます。

次の例では、persistence-type スタンザのサンプルを示します。

<persistence>
	<persistence-type>
		<type-identifier>WebLogic_CMP_RDBMS</type-identifier>
		<type-version>5.1.0</type-version>
		<type-storage>META-INF\weblogic-cmp-rdbms-jar.xml</type-storage>
	</persistence-type>
</persistence>

 


persistence-use

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

コンテナ管理の永続性サービスを使用するエンティティ EJB でのみ必須。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

persistence-use 要素は persistence-type と似ていますが、この要素はデプロイ中に実際に使用される永続性サービスを定義します。persistence-use では、persistence-type で定義した type-identifier 要素と type-version 要素を使用してサービスを指定します。

persistence-type で定義した WebLogic Server RDBMS ベースの永続性サービスを使用して EJB をデプロイするには、次の persistence-use スタンザを使用します。

<persistence-use>
	<type-identifier>WebLogic_CMP_RDBMS</type-identifier>
	<type-version>5.1.0</type-version>
</persistence-use>

 


persistent-store-dir

指定できる値 :

完全修飾ファイルシステム パス

デフォルト値 :

なし

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   stateful-session-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

persistent-store-dir 要素は、WebLogic Server が、パッシベーションが行われたステートフル セッション Bean インスタンスの状態を格納するファイル システム ディレクトリを指定します。

stateful-session-descriptorを参照してください。

 


pool

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   stateless-session-descriptor, message-bean-descriptor, entity-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

pool 要素は、ステートレス セッション EJB およびメッセージ駆動型 Bean の WebLogic Server フリー プールの動作をコンフィグレーションします。オプションは以下のとおりです。

pool スタンザには、以下の要素を指定できます。

<stateless-session-descriptor>
	<pool>
		<max-beans-in-free-pool>500</max-beans-in-free-pool>
		<initial-beans-in-free-pool>250</initial-beans-in-free-pool>
	</pool>
</stateless-session-descriptor>

 


principal-name

指定できる値 :

有効な WebLogic Server プリンシパル名

デフォルト値 :

なし

要件 :

security-role-assignment スタンザには、最低 1 つの principal-name が必須。各 role-name に対しては、複数の principal-name を定義できる。

親要素 :

weblogic-enterprise-bean
   security-role-assignment

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

principal-name は、指定した role-name に適用される実際の WebLogic Server プリンシパルの名前を指定します。

security-role-assignmentを参照してください。

 


provider-url

指定できる値 :

有効な名前

デフォルト値 :

なし

要件 :

initial-context-factory および connection-factory-jndi-name と組み合わせて使用する。

親要素 :

weblogic-enterprise-bean
   message-driven-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

provider-url 要素は、InitialContext が使用する URL プロバイダを指定します。通常、指定するのはホスト : ポートで、initial-context-factory および connection-factory-jndi-name と組み合わせて使用します。

次の例では、provider-url 要素の構造を指定します。

<message-driven-descriptor>
<provider-url>WeblogicURL:Port</provider-url>
</message-driven-descriptor>

 


read-timeout-seconds

指定できる値 :

0maxSecondsmaxSeconds は int の最大値。

デフォルト値 :

600

要件 :

省略可能。エンティティ EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       entity-cache

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

read-timeout-seconds 要素では、Read-Only エンティティ Bean での各 ejbLoad() 呼び出しの間隔を秒数で指定します。デフォルトでは、read-timeout-seconds は 600 に設定されており、WebLogic Server は、Bean がキャッシュされた場合にのみ ejbLoad() を呼び出します。

次の例では、インスタンスが最初にキャッシュされた場合にのみ WebLogic Server が AccountBean クラスのインスタンスに対して ejbLoad() を呼び出します。

<weblogic-enterprise-bean>
	<ejb-name>AccountBean</ejb-name>
	<entity-descriptor>
		<entity-cache>
			<read-timeout-seconds>0</read-timeout-seconds>
		</entity-cache>
	</entity-descriptor>
</weblogic-enterprise-bean>

 


reference-descriptor

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

reference-descriptor 要素では、ejb-jar.xml ファイル内の参照が、WebLogic Server で実際に使用可能なリソース ファクトリと EJB の JNDI 名にマップされます。

reference-descriptor スタンザには、リソース ファクトリ参照および EJB 参照を定義するために 1 つまたは複数のスタンザが追加されます。次の例に、これらの要素の構造を示します。

<reference-descriptor>
	<resource-description>
		...
	</resource-description>
	<ejb-reference-description>
		...
	</ejb-reference-description>
</reference-descriptor>

 


relationship-description

現在、この要素は WebLogic Server でサポートされていません。

 


replication-type

指定できる値 :

InMemory | None

デフォルト値 :

None

要件 :

省略可能。クラスタ内のステートフル セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean
   stateful-session-descriptor
       stateful-session-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

replication-type 要素は、クラスタ内の WebLogic Server インスタンスのステートフル セッション EJB の状態を WebLogic Server がレプリケートするかどうかを決定します。InMemory を指定した場合、EJB の状態はレプリケートされます。InMemory を指定した場合、状態はレプリケートされます。

詳細については、ステートフル セッション EJB のインメモリ レプリケーションを参照してください。

stateful-session-clusteringを参照してください。

 


res-env-ref-name

指定できる値 :

ejb-jar.xml ファイルにある有効なリソース環境参照名

デフォルト値 :

なし

要件 :

なし

親要素 :

weblogic-enterprise-bean
   reference-descriptor
       resource-env-description

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

res-env-ref-name はリソース環境参照名を指定します。

resource-descriptionを参照してください。

 


res-ref-name

指定できる値 :

ejb-jar.xml ファイルにある有効なリソース参照名

デフォルト値 :

なし

要件 :

EJB が ejb-jar.xml のリソース参照を指定する場合にのみ必須。

親要素 :

weblogic-enterprise-bean
   reference-descriptor
       resource-description

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

res-ref-nameresourcefactory 参照名を指定します。このリソース参照は、EJB プロバイダが ejb-jar.xml デプロイメント ファイル内に配置する参照です。

resource-descriptionを参照してください。

 


resource-description

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   reference-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

resource-description 要素は、ejb-jar.xml で定義されたリソース参照を、WebLogic Server で使用可能な実際のリソースの JNDI 名にマップします。

resource-description スタンザには、以下のように要素を追加できます。

<reference-descriptor>
	<resource-description>
		<res-ref-name>.. .</res-ref-name>
		<jndi-name>...</jndi-name>
	</resource-description>
	<ejb-reference-description>
		<ejb-ref-name>.. .</ejb-ref-name>
		<jndi-name>.. .</jndi-name>
	</ejb-reference-description>
</reference-descriptor>

 


resource-env-description

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean
   reference-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

resource-env-description 要素は、ejb-jar.xml で定義されたリソース環境参照を、WebLogic Server で使用可能な実際のリソースの JNDI 名にマップします。

resource-env-description スタンザには、以下のように要素を追加できます。

<reference-descriptor>
	<resource-env-description>
		<res-env-ref-name>.. .</res-env-ref-name>
		<jndi-name>...</jndi-name>
	<reference-env-description>
</reference-descriptor>

 


role-name

指定できる値 :

ejb-jar.xml で定義した EJB ロール名

デフォルト値 :

なし

要件 :

security-role-assignment で必須。

親要素 :

weblogic-enterprise-bean
   security-role-assignment

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

role-name 要素は、EJB プロバイダが ejb-jar.xml デプロイメント ファイルに指定したアプリケーションのロール名を示します。スタンザの次の principal-name 要素で、WebLogic Server プリンシパルを、指定した role-name にマップします。

security-role-assignmentを参照してください。

 


run-as-identity-principal

注意: この要素は廃止されています。以下の情報は、下位互換性のためだけに使用してください。

指定できる値 :

ejb-jar.xml で定義した、ID として使用するプリンシパル

デフォルト値 :

なし

要件 :

security-role-assignment で必須。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

run-as-identity-principal 要素は、ejb-jar.xml で設定した security-identity.run-as-specified-identity を持つ Bean の ID として使用するプリンシパルを指定します。

この要素で指定したプリンシパルは、run-as-specified--identity ロールにマップされるプリンシパルのいずれかである必要があります

run-as-identity-principal スタンザには、以下のように要素を追加できます。

<weblogic-ejb-jar>
	<weblogic-enterprise-bean>
    	<run-as-identity-principal>Fred</run-as-identity-principal>
	</weblogic-enterprise-bean>
</weblogic-ejb-jar>

 


security-role-assignment

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

ejb-jar.xml がアプリケーション ロールを定義する場合に必須。

親要素 :

なし

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

security-role-assignment スタンザは、ejb-jar.xml ファイル内のアプリケーション ロールを、WebLogic Server で使用可能なセキュリティ プリンシパル名にマップします。

security-role-assignment スタンザには、以下の要素のうち 1 つまたは複数を指定できます。

<security-role-assignment>
	<role-name>PayrollAdmin</role-name>
	<principal-name>Tanya</principal-name>
	<principal-name>system</principal-name>
	...
</security-role-assignment>

 


stateful-session-cache

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

stateful-session-cache スタンザは省略可能。この要素は、ステートフル セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   stateful-session-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateful-session-cache 要素は、WebLogic Server 内のステートフル セッション EJB インスタンスのキャッシュに使用する以下のオプションを定義します。

WebLogic Server で使用可能なキャッシュ サービスについては、WebLogic Server における EJB のライフサイクルを参照してください。

次の例では、stateful-session-descriptor 要素の指定方法を示します。

<stateful-session-cache>
	<max-beans-in-cache>...</max-beans-in-cache>
	<idle-timeout-seconds>...</idle-timeout-seconds>
	<cache-type>...<cache-type>
</stateful-session-cache>

 


stateful-session-clustering

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。クラスタ内のステートフル セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   stateful-session-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateful-session-clustering 要素には、WebLogic Server がクラスタ内のステートフル セッション EJB インスタンスをレプリケートする方法を決める以下のオプションを指定します。

次の例では、entity-clustering スタンザの構造を示します。

<stateful-session-clustering>
	<home-is-clusterable>true</home-is-clusterable>
	<home-load-algorithm>random</home-load-algorithm>
	<home-call-router-class-name>beanRouter</home-call-router-class-name>
	<replication-type>InMemory</replication-type>
</stateful-session-clustering>

 


stateful-session-descriptor

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

.jar 内のステートフル セッション EJB ごとに 1 つの stateful-session-descriptor スタンザが必須。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateful-session-descriptor 要素は、WebLogic Server のステートフル セッション EJB に適用する以下のデプロイメント パラメータを指定します。

次の例では、stateful-session-descriptor スタンザの構造を示します。

<stateful-session-descriptor>
	<stateful-session-cache>...</stateful-session-cache>
	<lifecycle>...</lifecycle>
	<persistence>...</persistence>
	<allow-concurrent-calls>...</allow-concurrent-calls>
	<persistent-store-dir>/weblogic/myserver</persistent-store-dir>
	<stateful-session-clustering>...</stateful-session-clustering>
</stateful-session-descriptor>

 


stateless-bean-call-router-class-name

指定できる値 :

有効なルータ クラス名

デフォルト値 :

なし

要件 :

省略可能。クラスタのステートレス セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   stateless-session-descriptor
       stateless-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateless-bean-call-router-class-name 要素は、Bean メソッド呼び出しのルーティングに使用するカスタム クラスの名前を指定します。このクラスは weblogic.rmi.extensions.CallRouter() を実装する必要があります。指定すると、このクラスのインスタンスは各メソッド呼び出しの前に呼び出されます。ルータ クラスでは、メソッドのパラメータを基に、ルーティングするサーバを選択できます。このクラスは、サーバ名を返すか、または現在のロード アルゴリズムがサーバを選択する必要があることを示す null を返します。

stateless-clusteringを参照してください。

 


stateless-bean-is-clusterable

指定できる値 :

true | false

デフォルト値 :

true

要件 :

省略可能。クラスタのステートレス セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   stateless-session-descriptor
       stateless-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateless-bean-is-clusterabletrue の場合、EJB をクラスタ内の複数の WebLogic Server からデプロイできます。ホーム スタブの呼び出しは、Bean がデプロイされるサーバ間で負荷が分散されます。Bean のホスト サーバにアクセスできなかった場合、呼び出しは、Bean を提供する他のサーバに自動的にフェイルオーバします。

stateless-clusteringを参照してください。

 


stateless-bean-load-algorithm

指定できる値 :

round-robin | random | weight-based

デフォルト値 :

weblogic.cluster.defaultLoadAlgorithm の値

要件 :

省略可能。クラスタのステートレス セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   stateless-session-descriptor
       stateless-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateless-bean-load-algorithm は、EJB ホームのレプリカ間でのロード バランシングに使用するアルゴリズムを指定します。このプロパティを定義しない場合、WebLogic Server はサーバ プロパティ weblogic.cluster.defaultLoadAlgorithm で指定されたアルゴリズムを使用します。

stateless-bean-load-algorithm を以下のいずれかの値で定義できます。

stateless-clusteringを参照してください。

 


stateless-bean-methods-are-idempotent

指定できる値 :

true | false

デフォルト値 :

false

要件 :

省略可能。クラスタのステートレス セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   stateless-session-descriptor
       stateless-clustering

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

この要素は、true または false に設定できます。同一引数での同一メソッドの多重呼び出しが 1 回だけの呼び出しとまったく同じになるように設計されている Bean に対してのみ、stateless-bean-methods-are-idempotent を「true」に設定します。これによって、フェイルオーバ ハンドラは、失敗した呼び出しが失敗したサーバで実際に完了していたかどうかがわからなくても失敗した呼び出しを再試行できます。このプロパティを true に設定すると、Bean を提供する他のサーバが使用できるようになっている限り、Bean スタブは障害から自動的に回復できます。

stateless-clusteringを参照してください。

 


stateless-clustering

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。クラスタのステートレス セッション EJB でのみ有効。

親要素 :

weblogic-enterprise-bean,
   stateless-session-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateless-clustering 要素は、WebLogic Server がクラスタ内のステートレス セッション EJB インスタンスをレプリケートする方法を決める以下のオプションを指定します。

次の例では、stateless-clustering スタンザの構造を示します。

<stateless-clustering>
	<stateless-bean-is-clusterable>true</stateless-bean-is-clusterable>
	<stateless-bean-load-algorithm>random</stateless-bean-load-algorithm>
	<stateless-bean-call-router-class-name>beanRouter</stateless-bean-call-router-class-name>
	<stateless-bean-methods-are-idempotent>true</stateless-bean-methods-are-idempotent>
</stateless-clustering>

 


stateless-session-descriptor

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

.jar のステートレス セッション EJB ごとに 1 つの stateless-session-descriptor 要素が必須。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

stateless-session-descriptor 要素は、WebLogic Server のステートレス セッション EJB に対するキャッシュ、クラスタ化、および永続性などのデプロイメント パラメータを定義します。

次の例では、stateless-session-descriptor スタンザの構造を示します。

<stateless-session-descriptor>
	<pool>...</pool>
	<stateless-clustering>...</stateless-clustering>
</stateless-session-descriptor>

 


transaction-descriptor

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

transaction-descriptor 要素は、WebLogic Server のトランザクション動作を定義するオプションを指定します。現在、このスタンザには trans-timeout-seconds という要素のみがあります。 trans-timeout-seconds.

次の例では、transaction-descriptor スタンザの構造を示します。

<transaction-descriptor>
	<trans-timeout-seconds>20</trans-timeout-seconds>
<transaction-descriptor>

 


transaction-isolation

指定できる値 :

なし(XML スタンザ)

デフォルト値 :

なし(XML スタンザ)

要件 :

省略可能。

親要素 :

weblogic-enterprise-bean

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

transaction-isolation 要素は、EJB に対してメソッド レベル トランザクションのアイソレーション設定を定義します。

transaction-isolation スタンザには、以下の要素を指定できます。

<transaction-isolation>
	<isolation-level>Serializable</isolation-level>
	<method>
		<description>...</description>
		<ejb-name>...</ejb-name>
		<method-intf>...</method-intf>
		<method-name>...</method-name>
		<method-params>...</method-params>
	</method>
</transaction-isolation>

 


trans-timeout-seconds

指定できる値 :

0max

デフォルト値 :

30

要件 :

省略可能。任意のタイプの EJB で有効。

親要素 :

weblogic-enterprise-bean,
   transaction-descriptor

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

trans-timeout-seconds 要素は、EJB のコンテナで初期化されたトランザクションの最長継続時間を指定します。トランザクションの継続時間が trans-timeout-seconds の値を超えると、WebLogic Server によってトランザクションがロールバックされます。

transaction-descriptorを参照してください。

 


type-identifier

指定できる値 :

有効な文字列

デフォルト値 :

なし

要件 :

コンテナ管理の永続性サービスを使用するエンティティ EJB でのみ必須。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

           persistence-type

および

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

           persistence-use

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

type-identifier 要素には、エンティティ EJB の永続性タイプを示すテキストを指定します。WebLogic Server RDBMS ベースの永続性では WebLogic_CMP_RDBMS という識別子を使用します。別の永続性ベンダを使用している場合、正しい type-identifier の詳細についてはベンダのマニュアルを参照してください。

WebLogic Server RDBMS ベースの永続性に関する完全な persistence-type の定義の例については、persistence-typeを参照してください。

 


type-storage

指定できる値 :

有効な文字列

デフォルト値 :

なし

要件 :

コンテナ管理の永続性サービスを使用するエンティティ EJB でのみ必須。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

           persistence-type

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

type-storage 要素では、この永続性タイプのデータを格納するファイルの絶対パスを定義します。パスは、EJB の .jar デプロイメント ファイルまたはデプロイメント ディレクトリの最上位を基準にしたファイルの場所を指定する必要があります。

WebLogic Server RDBMS ベースの永続性では通常、Bean の永続性データを格納するのに weblogic-cmp-rdbms-jar.xml という XML ファイルを使用します。このファイルは、.jar ファイルの META-INF サブディレクトリにあります。

WebLogic Server RDBMS ベースの永続性に関する完全な persistence-type の定義の例については、persistence-typeを参照してください。

 


type-version

指定できる値 :

有効な文字列

デフォルト値 :

なし

要件 :

コンテナ管理の永続性サービスを使用するエンティティ EJB でのみ必須。

親要素 :

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

           persistence-type

および

weblogic-enterprise-bean,
   entity-descriptor,
       persistence

           persistence-use

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

type-version 要素では、指定した永続性タイプのバージョンを指定します。

注意: WebLogic Server の RDBMS ベースの永続性を使用する場合、指定したバージョンは、WebLogic Server の RDBMS 永続性バージョンと完全に一致させる必要があります。バージョンが一致していないと、次のエラーが発生します。

weblogic.ejb.persistence.PersistenceSetupException: Error initializing the CMP Persistence Type for your bean: No installed Persistence Type matches the signature of (identifier 'Weblogic_CMP_RDBMS', version 'version_number').

WebLogic Server RDBMS ベースの永続性に関する完全な persistence-type の定義の例については、「persistence-type」を参照してください。

 


weblogic-ejb-jar

指定できる値 :

なし

デフォルト値 :

なし

要件 :

なし

親要素 :

なし

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

weblogic-ejb-jar は、EJB デプロイメント記述子の weblogic コンポーネントのルート要素です。

 


weblogic-enterprise-bean

指定できる値 :


デフォルト値 :


要件 :


親要素 :

weblogic-ejb-jar

デプロイメント ファイル :

weblogic-ejb-jar.xml

機能

weblogic-enterprise-bean 要素には、WebLogic Server 内で利用可能な Bean に関するデプロイメント情報が含まれます。

 


5.1 の weblogic-ejb-jar.xml デプロイメント記述子ファイルの構造

WebLogic Server 5.1 の weblogic-ejb-jar.xml ファイルは、EJB 1.1 Bean で使用する EJB 文書型定義(DTD)を定義します。これらのデプロイメント記述子要素は WebLogic 固有です。WebLogic Server 5.1 の weblogic-ejb-jar.xml の最上位要素は次のとおりです。

 


5.1 の weblogic-ejb-jar.xml デプロイメント記述子要素

以下の節では、WebLogic Server 5.1 の weblogic-ejb-jar.xml デプロイメント記述子の要素について説明します。

caching-descriptor

caching-descriptor スタンザは、WebLogic Server キャッシュ内の EJB の数、および EJB に対してパッシベーションが行われるまたは EJB がプールされるまでの時間の長さに影響します。このスタンザは、各要素だけでなく、スタンザ全体が省略可能です。要素が定義されていない場合、WebLogic Server ではデフォルト値が使用されます。

以下は、サンプルの caching-descriptor スタンザであり、この節で説明するキャッシング要素を示しています。

<caching-descriptor>
   <max-beans-in-free-pool>500</max-beans-in-free-pool>
   <initial-beans-in-free-pool>50</initial-beans-in-free-pool>
   <max-beans-in-cache>1000</max-beans-in-cache>
   <idle-timeout-seconds>20</idle-timeout-seconds>
   <cache-strategy>Read-Write</cache-strategy>
   <read-timeout-seconds>0</read-timeout-seconds>
</caching-descriptor>

max-beans-in-free-pool

注意: この要素は、ステートレス セッション EJB に対してのみ有効です。

WebLogic Server では、すべての Bean クラスに対して EJB のフリー プールが維持管理されています。この省略可能な要素では、フリー プールのサイズを定義します。デフォルトでは、max-beans-in-free-pool は無制限です。フリー プール内の Bean の最大数はメモリによってのみ制限されます。詳細については、WebLogic Server EJB コンテナとサポートされるサービスステートフル セッション EJB インスタンスのアクティブ化と使用を参照してください。

initial-beans-in-free-pool

注意: この要素は、ステートレス セッション EJB に対してのみ有効です。

initial-bean-in-free-pool の値を指定すると、WebLogic Server では、起動時に、指定した数の Bean インスタンスがフリー プールに生成されます。この方法で Bean インスタンスをフリー プールに格納しておくと、要求が来てから新しいインスタンスを生成せずに Bean に対する初期要求が可能になるため、EJB の初期応答時間が短縮されます。

initial-bean-in-free-pool が定義されていない場合のデフォルト値は 0 です。

max-beans-in-cache

注意: この要素は、ステートフル セッション EJB に対してのみ有効です。

この要素では、メモリの許容範囲内で、このクラスのオブジェクトの最大数を指定します。max-bean-in-cache の値に達すると、WebLogic Server では、最近クライアントに使用されていない EJB の一部に対してパッシベーションが行われます。また、ステートフル セッション EJB インスタンスの削除で説明されているように、max-beans-in-cache の値は、EJB を WebLogic Server のキャッシュからいつ削除するかにも影響を与えます。

max-beans-in-cache のデフォルト値は 100 です。

idle-timeout-seconds

idle-timeout-seconds では、ステートフル EJB がキャッシュに保持される最長時間を定義します。この時間を過ぎると、キャッシュ内の Bean の数が max-beans-in-cache で指定した値を超えている場合、WebLogic Server では Bean インスタンスが削除されます。詳細については、WebLogic Server における EJB のライフサイクルを参照してください。

定義されていない場合、idle-timeout-seconds のデフォルト値は 600 です。

cache-strategy

cache-strategy 要素には、以下のいずれかを指定できます。

デフォルト値は Read-Write です。詳細については、エンティティ EJB の read-only への設定を参照してください。

read-timeout-seconds

read-timeout-seconds 要素では、Read-Only エンティティ Bean での各 ejbLoad() 呼び出しの間隔を秒数で指定します。デフォルトでは、read-timeout-seconds は 600 秒に設定されています。この値を 0 に設定すると、WebLogic Server では、その Bean がキャッシュされた場合にのみ、ejbLoad が呼び出されます。

persistence-descriptor

persistence-descriptor スタンザでは、エンティティ EJB に対する永続性オプションを指定します。以下に、persistence-descriptor スタンザに含まれるすべての要素を示します。

<persistence-descriptor>
   <is-modified-method-name>. . .</is-modified-method-name>
   <delay-updates-until-end-of-tx>. . .</delay-updates-until-end-of-tx>
   <persistence-type>
      <type-identifier>. . .</type-identifier>
      <type-version>. . .</type-version>
      <type-storage>. . .</type-storage>
   </persistence-type>
   <db-is-shared>. . .</db-is-shared>
   <stateful-session-persistent-store-dir>
      . . .
   </stateful-session-persistent-store-dir>
   <persistence-use>. . .</persistence-use>
</persistence-descriptor>

is-modified-method-name

is-modified-method-name では、EJB の保存時に WebLogic Server によって呼び出されるメソッドを指定します。指定したメソッドはブール値を返す必要があります。メソッドを指定しない場合、WebLogic Server では、EJB は常に変更されていると見なされて保存されます。

メソッドを指定して適切な値を設定すると、パフォーマンスが向上します。ただし、メソッドの戻り値にエラーがあると、データに矛盾が発生する場合があります。詳細については、is-modified-method-name を使用した ejbStore() の呼び出しの制限(EJB 1.1 のみ)を参照してください。

delay-updates-until-end-of-tx

トランザクションの完了時にトランザクションですべての Bean の永続ストレージを更新するには、このプロパティを true (デフォルト)に設定します。通常、これによって不要な更新を防ぐことができるため、パフォーマンスが向上します。ただし、データベース トランザクション内のデータベース更新の順序は保持されません。

データベースがアイソレーション レベルとして TRANSACTION_READ_UNCOMMITTED を使用している場合は、進行中のトランザクションに関する中間結果を他のデータベースのユーザに表示することもできます。この場合、delay-updates-until-end-of-txfalse に設定して、各メソッド呼び出しの完了時に Bean の永続ストレージを更新するように指定します。詳細については、エンティティ EJB に対する ejbLoad() と ejbStore() の動作を参照してください。

注意: delay-updates-until-end-of-tx を false に設定しても、各メソッド呼び出しの後にデータベース更新が「コミットされた」状態になるわけではありません。更新はデータベースに送信されるだけです。更新は、トランザクションの完了時にのみデータベースにコミットまたはロールバックされます。

persistence-type

persistence-type では、EJB で使用可能な永続性サービスを定義します。複数の永続性サービスを持つ EJB をテストするために、weblogic-ejb-jar.xml で複数の persistence-type エントリを定義できます。デプロイメントでは、persistence-use で定義した永続性タイプのみが実際に使用されます。

persistence-type には、サービスのプロパティを定義する要素が含まれます。

注意: 指定したバージョンは、WebLogic Server の RDBMS の永続性のバージョンと正確に一致している必要があります。バージョンが一致していないと、次のエラーが発生します。

weblogic.ejb.persistence.PersistenceSetupException: Error initializing the CMP Persistence Type for your bean: No installed Persistence Type matches the signature of (identifier 'Weblogic_CMP_RDBMS', version 'version_number').

以下は、WebLogic Server RDBMS の永続性について適切な値が指定されている persistence-type スタンザの例です。

<persistence-type>
    <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
    <type-version>5.1.0</type-version>
    <type-storage>META-INF\weblogic-cmp-rdbms-jar.xml</type-storage>
</persistence-type>

db-is-shared

db-is-shared 要素はエンティティ Bean に対してのみ有効です。true(デフォルト値)に設定すると、WebLogic Server では、EJB データがトランザクション間で変更されると見なされ、各トランザクションの開始時にデータが再ロードされます。false に設定すると、WebLogic Server では、永続ストレージの EJB データに排他的にアクセスすると見なされます。詳細については、db-is-shared を使用した ejbLoad() の呼び出しの制限を参照してください。

stateful-session-persistent-store-dir

stateful-session-persistent-store-dir 要素では、WebLogic Server で、パッシベーションが行われたステートフル セッション Bean インスタンスの状態が格納されるファイル システム ディレクトリを指定します。

persistence-use

persistence-use プロパティは persistence-type とほぼ同じですが、このプロパティはデプロイ中に実際に使用される永続性サービスを定義します。persistence-use では、persistence-type で定義されている type-identifier 要素と type-version 要素を使用してサービスを指定します。

たとえば、persistence-type で定義されている WebLogic Server RDBMS ベースの永続性サービスを使用して実際に EJB をデプロイする場合、persistence-use スタンザは次のようになります。

<persistence-use>
   <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
   <type-version>5.1.0</type-version>
</persistence-use>

clustering-descriptor

clustering-descriptor スタンザでは、WebLogic Server クラスタにデプロイされた EJB のレプリケーション プロパティと動作を定義します。clustering-descriptor スタンザとその各要素は省略可能であり、単一サーバ システムには適用できません。

以下に、clustering-descriptor スタンザに含まれるすべての要素を示します。

<clustering-descriptor>
   <home-is-clusterable>. . .</home-is-clusterable>
   <home-load-algorithm>. . .</home-load-algorithm>
   <home-call-router-class-name>. . .</home-call-router-class-name>
   <stateless-bean-is-clusterable>. . .</stateless-bean-is-clusterable>
   <stateless-bean-load-algorithm>. . .</stateless-bean-load-algorithm>
   <stateless-bean-call-router-class-name>. . .</stateless-bean-call-router-class-name>
   <stateless-bean-methods-are-idempotent>. . .</stateless-bean-methods-are-idempotent>
</clustering-descriptor>

home-is-clusterable

この要素は、true または false に設定できます。home-is-clusterable が「true」の場合、クラスタ内の複数の WebLogic Server から EJB をデプロイできます。ホーム スタブの呼び出しは、Bean がデプロイされるサーバ間で負荷が分散されます。Bean のホスト サーバにアクセスできなかった場合、呼び出しは、Bean を提供する他のサーバに自動的にフェイルオーバします。

home-load-algorithm

home-load-algorithm では、EJB ホームのレプリカ間でのロード バランシングに使用するアルゴリズムを指定します。このプロパティを定義しない場合、WebLogic Server はサーバ プロパティ weblogic.cluster.defaultLoadAlgorithm で指定されたアルゴリズムを使用します。

home-load-algorithm は以下のいずれかの値に定義できます。

home-call-router-class-name

home-call-router-class-name では、Bean メソッド呼び出しのルーティングに使用するカスタム クラスを指定します。このクラスは weblogic.rmi.extensions.CallRouter() を実装する必要があります。指定すると、このクラスのインスタンスは各メソッド呼び出しの前に呼び出されます。ルータ クラスでは、メソッドのパラメータを基に、ルーティングするサーバを選択できます。このクラスは、サーバ名を返すか、または現在のロード アルゴリズムがサーバを選択する必要があることを示す null を返します。

stateless-bean-is-clusterable

このプロパティは home-is-clusterable に似ていますが、ステートレス セッション EJB にのみ適用できます。

stateless-bean-load-algorithm

このプロパティは home-load-algorithm に似ていますが、ステートレス セッション EJB にのみ適用できます。

stateless-bean-call-router-class-name

このプロパティは home-call-router-class-name に似ていますが、ステートレス セッション EJB にのみ適用できます。

stateless-bean-methods-are-idempotent

この要素は、true または false に設定できます。同一引数での同一メソッドの多重呼び出しが 1 回だけの呼び出しとまったく同じになるように設計されている Bean に対してのみ、stateless-bean-methods-are-idempotenttrue に設定します。これによって、フェイルオーバ ハンドラは、失敗した呼び出しが失敗したサーバで実際に完了していたかどうかがわからなくても失敗した呼び出しを再試行できます。このプロパティを true に設定すると、Bean を提供する他のサーバが使用できるようになっている限り、Bean スタブは障害から自動的に回復できます。

注意: このプロパティは、ステートレス セッション EJB にのみ適用できます。

transaction-descriptor

transaction-descriptor スタンザには、WebLogic Server のトランザクション動作を定義する要素があります。現在、このスタンザには trans-timeout-seconds という要素のみがあります。

<transaction-descriptor>
   <trans-timeout-seconds>20</trans-timeout-seconds>
<transaction-descriptor>

trans-timeout-seconds

trans-timeout-seconds 要素は、EJB のコンテナで初期化されたトランザクションの最長継続時間を指定します。トランザクションの継続時間が trans-timeout-seconds の値を超えると、WebLogic Server によってトランザクションがロールバックされます。

trans-timeout-seconds に値を指定しなかった場合、コンテナで初期化されたトランザクションはデフォルトで 30 秒後にタイムアウトになります。

reference-descriptor

reference-descriptor スタンザでは、ejb-jar.xml ファイル内の参照が、WebLogic Server で実際に使用可能なリソース ファクトリと EJB の JNDI 名にマップされます。

reference-descriptor スタンザには、リソース ファクトリ参照および EJB 参照を定義するために 1 つまたは複数のスタンザが追加されます。次の例に、これらの要素の構造を示します。

<reference-descriptor>
   <resource-description>
      <res-ref-name>.. .</res-ref-name>
      <jndi-name>.. .</jndi-name>
   </resource-description>
   <ejb-reference-description>
      <ejb-ref-name>.. .</ejb-ref-name>
      <jndi-name>.. .</jndi-name>
   </ejb-reference-description>
</reference-descriptor>

resource-description

以下の要素で、各 resource-description を定義します。

ejb-reference-description

以下の要素で、各 ejb-reference-description を定義します。

enable-call-by-reference

デフォルトでは、同じサーバから呼び出された EJB メソッドは引数を参照で渡す。パラメータはコピーされないので、これによってメソッド呼び出しのパフォーマンスが向上する。

enable-call-by-referencefalse に設定すると、EJBE 1.1 の仕様に従って EJB メソッドへのパラメータがコピーされ(値で渡され)ます。EJB がリモートで(同じサーバ以外から)呼び出される場合は、常に値で渡す必要があります。

jndi-name

jndi-name 要素は、Bean、リソース、または参照の JNDI 名を指定します。

transaction-isolation

transaction-isolation スタンザでは、EJB メソッドに対するトランザクションのアイソレーション レベルを指定します。このスタンザは、EJB メソッドの範囲に適用される 1 つまたは複数の isolation-level 要素で構成されます。次に例を示します。

<transaction-isolation>
	<isolation-level>Serializable</isolation-level>
	<method>
		<description>...</description>
		<ejb-name>...</ejb-name>
		<method-intf>...</method-intf>
		<method-name>...</method-name>
		<method-params>...</method-params>
	</method>
</transaction-isolation>

以降の節では、transaction-isolation 内の各要素について説明します。

isolation-level

isolation-level では、特定の EJB メソッドに適用される有効なトランザクションのアイソレーション レベルを定義します。isolation-level には以下の値を指定できます。

異なるアイソレーション レベルの関係と各アイソレーション レベルのサポートの詳細については、各データベースのマニュアルを参照してください。

method

method スタンザは、アイソレーション レベルを適用する EJB メソッドを定義します。method では、以下の要素を使用してメソッドの範囲を定義します。

たとえば、次の method スタンザは、「AccountBean」 EJB 内のすべてのメソッドを示しています。

<method>
	<ejb-name>AccountBean</ejb-name>
	<method-name>*</method-name>
</method>

次の method スタンザは、「AccountBean」のリモート インタフェース内のすべてのメソッドを示しています。

<method>
	<ejb-name>AccountBean</ejb-name>
	<method-intf>Remote</method-intf>
	<method-name>*</method-name>
</method>

security-role-assignment

security-role-assignment スタンザでは、ejb-jar.xml ファイル内のアプリケーション ロールが、WebLogic Server で使用可能なセキュリティ プリンシパル名にマップされます。

security-role-assignment には、以下の要素のうち 1 つまたは複数を指定できます。

 

back to top previous page next page