パッケージ jakarta.ejb
インターフェース EntityBean
- すべてのスーパーインターフェース:
EnterpriseBean,SerializableSE
public interface EntityBean extends EnterpriseBean
EntityBean インターフェースは、すべてのエンティティ Bean クラスによって実装されます。コンテナーは、EntityBean メソッドを使用して、エンティティ Bean インスタンスにインスタンスのライフサイクルイベントを通知します。EJB 3.0 以降の API に書き込まれたアプリケーションは、Jakarta Persistence API(
jakarta.persistence)の機能を使用して永続エンティティをモデル化する必要があります。注意 : EJB 3.2 では、エンティティ Bean のサポートはオプションです。
- 導入:
- EJB 1.0
方法の概要
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 voidejbActivate()コンテナーは、インスタンスが利用可能なインスタンスのプールから取り出され、特定の Enterprise Bean オブジェクトに関連付けられると、このメソッドを呼び出します。voidejbLoad()コンテナーはこのメソッドを呼び出して、基盤となるデータベースから状態をロードすることにより、状態を同期するようインスタンスに指示します。voidejbPassivate()インスタンスが特定の Enterprise Bean オブジェクトとの関連付けを解除する前に、コンテナーはインスタンスでこのメソッドを呼び出します。voidejbRemove()コンテナーは、現在インスタンスに関連付けられている Enterprise Bean オブジェクトを削除する前にこのメソッドを呼び出します。voidejbStore()コンテナーは、このメソッドを呼び出して、基盤となるデータベースに保存することにより、状態を同期するようインスタンスに指示します。voidsetEntityContext(EntityContext ctx)関連するエンティティコンテキストを設定します。voidunsetEntityContext()関連するエンティティコンテキストの設定を解除します。
メソッドの詳細
setEntityContext
void setEntityContext(EntityContext ctx) throws EJBException, RemoteExceptionSE
関連するエンティティコンテキストを設定します。コンテナーは、インスタンスが作成された後、インスタンスでこのメソッドを呼び出します。このメソッドは、指定されていないトランザクションコンテキストで呼び出されます。
- パラメーター:
ctx- インスタンスの EntityContext インターフェース。インスタンスは、インスタンス変数にコンテキストへの参照を保存する必要があります。- 例外:
EJBException- メソッドによってスローされ、システムレベルのエラーが原因の障害を示します。RemoteExceptionSE- この例外は、Enterprise Bean 1.0 仕様用に記述された Enterprise Bean に下位互換性を提供するためにメソッドシグネチャーで定義されています。EJB 1.1 仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。EJB2.0 以降の仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。
unsetEntityContext
void unsetEntityContext() throws EJBException, RemoteExceptionSE関連するエンティティコンテキストの設定を解除します。コンテナーは、インスタンスを削除する前にこのメソッドを呼び出します。これは、コンテナーがインスタンスで呼び出す最後のメソッドです。Java ガベージコレクターは、最終的にインスタンスで finalize() メソッドを呼び出します。
このメソッドは、指定されていないトランザクションコンテキストで呼び出されます。
- 例外:
EJBException- メソッドによってスローされ、システムレベルのエラーが原因の障害を示します。RemoteExceptionSE- この例外は、Enterprise Bean 1.0 仕様用に記述された Enterprise Bean に下位互換性を提供するためにメソッドシグネチャーで定義されています。EJB 1.1 仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。EJB2.0 以降の仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。
ejbRemove
void ejbRemove() throws RemoveException, EJBException, RemoteExceptionSEコンテナーは、現在インスタンスに関連付けられている Enterprise Bean オブジェクトを削除する前にこのメソッドを呼び出します。このメソッドは、クライアントがエンティティ Bean のホームインターフェースまたは Enterprise Bean オブジェクトのリモートインターフェースで削除操作を呼び出すと呼び出されます。このメソッドは、インスタンスを準備完了状態から使用可能なインスタンスのプールに移行します。このメソッドは、削除操作のトランザクションコンテキストで呼び出されます。
- 例外:
RemoveException- Enterprise Bean は、オブジェクトの破棄を許可しません。EJBException- メソッドによってスローされ、システムレベルのエラーが原因の障害を示します。RemoteExceptionSE- この例外は、Enterprise Bean 1.0 仕様用に記述された Enterprise Bean に下位互換性を提供するためにメソッドシグネチャーで定義されています。EJB 1.1 仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。EJB2.0 以降の仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。
ejbActivate
void ejbActivate() throws EJBException, RemoteExceptionSEコンテナーは、インスタンスが利用可能なインスタンスのプールから取り出され、特定の Enterprise Bean オブジェクトに関連付けられると、このメソッドを呼び出します。このメソッドは、インスタンスを準備完了状態に移行します。このメソッドは、指定されていないトランザクションコンテキストで実行されます。
- 例外:
EJBException- メソッドによってスローされ、システムレベルのエラーが原因の障害を示します。RemoteExceptionSE- この例外は、Enterprise Bean 1.0 仕様用に記述された Enterprise Bean に下位互換性を提供するためにメソッドシグネチャーで定義されています。EJB 1.1 仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。EJB2.0 以降の仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。
ejbPassivate
void ejbPassivate() throws EJBException, RemoteExceptionSEインスタンスが特定の Enterprise Bean オブジェクトとの関連付けを解除する前に、コンテナーはインスタンスでこのメソッドを呼び出します。このメソッドが完了すると、コンテナーはインスタンスを利用可能なインスタンスのプールに配置します。このメソッドは、指定されていないトランザクションコンテキストで実行されます。
- 例外:
EJBException- メソッドによってスローされ、システムレベルのエラーが原因の障害を示します。RemoteExceptionSE- この例外は、Enterprise Bean 1.0 仕様用に記述された Enterprise Bean に下位互換性を提供するためにメソッドシグネチャーで定義されています。EJB 1.1 仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。EJB2.0 以降の仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。
ejbLoad
void ejbLoad() throws EJBException, RemoteExceptionSEコンテナーはこのメソッドを呼び出して、基盤となるデータベースから状態をロードすることにより、状態を同期するようインスタンスに指示します。このメソッドは、デプロイ記述子のトランザクション属性の値によって決定されるトランザクションコンテキストで常に実行されます。
- 例外:
EJBException- メソッドによってスローされ、システムレベルのエラーが原因の障害を示します。RemoteExceptionSE- この例外は、Enterprise Bean 1.0 仕様用に記述された Enterprise Bean に下位互換性を提供するためにメソッドシグネチャーで定義されています。EJB 1.1 仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。EJB2.0 以降の仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。
ejbStore
void ejbStore() throws EJBException, RemoteExceptionSEコンテナーは、このメソッドを呼び出して、基盤となるデータベースに保存することにより、状態を同期するようインスタンスに指示します。このメソッドは、デプロイ記述子のトランザクション属性の値によって決定されるトランザクションコンテキストで常に実行されます。
- 例外:
EJBException- メソッドによってスローされ、システムレベルのエラーが原因の障害を示します。RemoteExceptionSE- この例外は、Enterprise Bean 1.0 仕様用に記述された Enterprise Bean に下位互換性を提供するためにメソッドシグネチャーで定義されています。EJB 1.1 仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。EJB2.0 以降の仕様用に記述された Enterprise Bean は、この例外の代わりに jakarta.ejb.EJBException をスローする必要があります。