現在のトランザクション中に EntityBean インスタンスを修正していない場合、ejbStore メソッドの呼び出しを回避するようにそれらの EntityBean インスタンスを構成することができます。
このタスクについて
現在のトランザクション中に Bean が修正された場合にのみ、特定の EJB 型がその ejbStore メソッドを呼び出すことを指定するために、次の 2 つのオプションが使用できます。
- Bean のデプロイメント記述子内に EJB 環境変数を設定します。
- Bean 実装クラスにマーカー・インターフェースを実装させます。
常に単一のルート・クラスを拡張するような、多数の Bean インプリメンテーションがある場合は、2 番目の手法が特に有効です。
この場合、ルート・クラスでマーカー・インターフェースを実装することで、このクラスを拡張するすべての Bean で振る舞いも継承させることができます。
プロシージャー
- EJB 環境変数技術を使用するには、任意の標準的な Java 2 Enterprise Edition (J2EE) 開発ツールを使用して、EJB デプロイメント記述子を編集します。
以下のステップをガイドとして使用してください。(ツールのオプションについては、
アセンブリー・ツール
の項目を参照してください。)
- ツールを開始します。
- 操作したい Bean の EJB デプロイメント記述子を選択します。
- com/ibm/websphere/ejbcontainer/disableEJBStoreForNonDirtyBeans という名前の EJB 環境変数を作成します。
- この変数の型を java.lang.Boolean と設定します。
- この値を True に設定すると ejbStore 呼び出しを避けることができ、False に設定するとデフォルトの振る舞いを使用可能にします。
- 変更を保管します。
- マーカー・インターフェースを使用するには、Bean 実装クラスをコーディングして com.ibm.websphere.ejbcontainer.DisableEJBStoreForNonDirtyBeans インターフェースを実装します。
Bean インプリメンテーション・クラスは直接インターフェースをインプリメントする必要はありません。任意の親クラスがインターフェースをインプリメントできます。
インフォメーション・センターの 「参照」 > 「Developer 」> 「API documentation」セクションにある com.ibm.websphere.ejbcontainer パッケージを参照してください。