4.2.3 ローカルインタフェースとリモートインタフェースの使い分け
EJB 2.0仕様で追加されたローカルインタフェースを利用すると,RMI-IIOP通信処理のオーバーヘッドを削減できますが,ローカルインタフェースだけを持つEnterprise Beanはリモート呼び出しができません。また,ローカルインタフェースを使用する場合,メソッドの引数,戻り値がpass by referenceで動作できる必要があります。次に示すローカルインタフェースの使用条件を参考に,ローカルインタフェースとリモートインタフェースを使い分けてください。
- ローカルインタフェースの使用が推奨される場合
-
Enterprise Beanとクライアント(Enterprise BeanまたはJSP/サーブレット)が同じJ2EEアプリケーションに含まれている場合,ローカルインタフェースの使用が推奨されます。
- ローカルインタフェースの使用が必須の場合
-
CMP2.xのCMRは,ローカルインタフェースの使用が前提のため,ローカルインタフェースを使用してください。
- ローカルインタフェースが使用できない場合
-
次の場合は,ローカルインタフェースが使用できません。
-
Enterprise Beanとクライアント(Enterprise BeanまたはJSP/サーブレット)が別のJ2EEアプリケーションに含まれている場合。
-
Enterprise Beanとクライアント(Enterprise BeanまたはJSP/サーブレット)がほかのJ2EEサーバ(別のJavaVM)で実行される場合。
-
EJB 1.1ですでに実装されている場合。
-