WebSphere Application Server では、軽量ローカル ・モードと呼ばれる特殊な動作モードが提供されています。 これにより、エンティティー Bean メソッドのパフォーマンスが向上します。 アプリケーションのどのエンティティー Bean を、このモードで実行するかを決めることができます。
軽量ローカル・モードでは、コンテナーによって、 Bean のローカル・ホーム・インターフェースとローカル・ビジネス・インターフェース上でそのコンテナーが各メソッドの前後に行う処理が簡素化されます。 この簡素化により、アプリケーション内からエンティティー Bean 操作がローカルに呼び出されたときのパフォーマンスが向上します。 軽量ローカル・モードで実行すると、一部の処理がスキップされるため、 このモードは特定のシナリオでのみ使用可能です。
軽量ローカル・モードは、Enterprise JavaBeans (EJB) 3.0 仕様に導入されている Plain Old Java Object (POJO) エンティティー・モデルに従って、ある程度パターン化されています。 軽量ローカル・モードを使用すると、既存の EJB 2.x アプリケーション・コードを新しい POJO モデルに変換しなくても、 POJO エンティティー・モデルのパフォーマンスの一部の利点が提供されます。 軽量ローカル・モードは、 固有の基準に合致するコンテナー管理パーシスタンス (CMP) と Bean 管理パーシスタンス (BMP) のエンティティー・タイプの両方に適用できます。
EJB コンテナーの詳細については、エンタープライズ Bean: 学習用リソース を参照してください。
軽量ローカル・モードは、セッション・ファサード・パターンを使用して作成、検索、 および呼び出されるエンティティー Bean 向けに設計されています。 このパターンでは、エンティティー Bean のローカル・ホームとローカル・ビジネス・メソッドが、 ステートレス・セッション Bean またはステートフル・セッション Bean のメソッド内から呼び出されます。 セッション Bean メソッドは、リモートまたはローカルで呼び出すことができますが、 セッション Bean によってアクセスされるエンティティー Bean 向けにセキュリティー管理とトランザクション区分を提供します。
最初の基準によって、CMP 1.x Bean は軽量ローカル・モードをサポートできません。 これは、1.x Beans にはローカル・インターフェースがないためです。
軽量ローカル・モードで実行されているエンティティー Bean メソッドがグローバル・トランザクションを開始する必要がある場合、 Bean は引き続き正常に機能しますが、実現されるパフォーマンスの利点は一部だけです。
軽量ローカル・モードの場合、ローカル・インターフェースのほかに、 リモート・インターフェースまたは TimedObject インターフェースを定義するエンティティー Bean にマークを付けることができます。 ただし、明確なパフォーマンスの利点は、Bean がそのローカル・インターフェースを介して呼び出された場合に限られます。