パッケージ 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
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 void
ejbActivate()
コンテナーは、インスタンスが利用可能なインスタンスのプールから取り出され、特定の Enterprise Bean オブジェクトに関連付けられると、このメソッドを呼び出します。void
ejbLoad()
コンテナーはこのメソッドを呼び出して、基盤となるデータベースから状態をロードすることにより、状態を同期するようインスタンスに指示します。void
ejbPassivate()
インスタンスが特定の Enterprise Bean オブジェクトとの関連付けを解除する前に、コンテナーはインスタンスでこのメソッドを呼び出します。void
ejbRemove()
コンテナーは、現在インスタンスに関連付けられている Enterprise Bean オブジェクトを削除する前にこのメソッドを呼び出します。void
ejbStore()
コンテナーは、このメソッドを呼び出して、基盤となるデータベースに保存することにより、状態を同期するようインスタンスに指示します。void
setEntityContext(EntityContext ctx)
関連するエンティティコンテキストを設定します。void
unsetEntityContext()
関連するエンティティコンテキストの設定を解除します。
メソッドの詳細
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 をスローする必要があります。