さらに、javax.ejb.EJBHome を拡張する Bean のホーム インターフェイスを提供する必要があります。このインターフェイスで定義されるメソッドは、クライアントがリモート オブジェクトへの参照を確立するために使用します。
ホーム インターフェイスは、次のように定義する必要があります。
create メソッド
create メソッドcreate メソッド
それぞれの create メソッドには、Bean のクラス実装の引数と同じ引数のある、一致する ejbCreate メソッドが 1 つ必要です。引数はどれも有効な RMI データ タイプで、戻り値は次のようになる必要があります。
エンティティ Bean には、少なくとも 1 つの finder メソッドが必要です。ただし、セッション Bean の場合、finder メソッドは無効です。finder メソッドの引数は、有効な RMI データ型であることが必要です。また、その戻り値は Bean のリモート インターフェイス タイプを単一に、コレクション、または列挙で返す必要があります。
次のサンプル インターフェイスは、エンティティ ホーム インターフェイスの必要条件を示しています。
package ejbeans;
import java.rmi.*;
import javax.ejb.*;
public interface BalanceHome extends EJBHome {
/* All methods here must have matching methods in BalanceBean.java */
Balance create(int accountId) throws CreateException,
RemoteException;
Balance findByPrimaryKey(Integer key) throws FinderException,
RemoteException;
}
throws 句で定義される例外は Bean クラスで定義される例外に一致し、RemoteException が含まれている必要があります。create メソッドの場合、例外として CreateException も含まれている必要があります。