パッケージ jakarta.ejb
インターフェース EJBContext
- すべての既知のサブインターフェース:
EntityContext
、MessageDrivenContext
、SessionContext
public interface EJBContext
EJBContext インターフェースは、Enterprise Bean インスタンスのコンテナー提供のランタイムコンテキストへのアクセスをインスタンスに提供します。このインターフェースは
SessionContext
、EntityContext
、MessageDrivenContext
インターフェースによって拡張され、エンタープライズインターフェース Bean 型に固有の追加のメソッドを提供します。- 導入:
- EJB 1.0
- 関連事項:
SessionContext
,MessageDrivenContext
,EntityContext
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 PrincipalSE
getCallerPrincipal()
呼び出し元を識別するjava.security.Principal
を取得します。MapSE<StringSE,ObjectSE>
getContextData()
getContextData
メソッドを使用すると、ビジネスメソッド、ライフサイクルコールバックメソッド、タイムアウトメソッドで、その呼び出しに関連付けられているインターセプター / Web サービスコンテキストを取得できます。EJBHome
getEJBHome()
Enterprise Bean のリモートホームインターフェースを取得します。EJBLocalHome
getEJBLocalHome()
Enterprise Bean のローカルホームインターフェースを取得します。boolean
getRollbackOnly()
トランザクションがロールバックのみにマークされているかどうかをテストします。TimerService
getTimerService()
Enterprise Bean タイマーサービスにアクセスします。UserTransaction
getUserTransaction()
トランザクション境界インターフェースを取得します。boolean
isCallerInRole(StringSE roleName)
呼び出し元が特定のセキュリティロールを持っているかどうかをテストします。ObjectSE
lookup(StringSE name)
java:
名前空間内のリソースを検索します。void
setRollbackOnly()
現在のトランザクションにロールバックのマークを付けます。
メソッドの詳細
getEJBHome
EJBHome getEJBHome() throws IllegalStateExceptionSE
Enterprise Bean のリモートホームインターフェースを取得します。- 戻り値:
- Enterprise Bean のリモートホームインターフェース。
- 例外:
IllegalStateExceptionSE
- Enterprise Bean にリモートホームインターフェースがない場合。
getEJBLocalHome
EJBLocalHome getEJBLocalHome() throws IllegalStateExceptionSE
Enterprise Bean のローカルホームインターフェースを取得します。- 戻り値:
- Enterprise Bean のローカルホームインターフェース。
- 例外:
IllegalStateExceptionSE
- Enterprise Bean にローカルホームインターフェースがない場合。- 導入:
- EJB 2.0
getCallerPrincipal
PrincipalSE getCallerPrincipal() throws IllegalStateExceptionSE
呼び出し元を識別するjava.security.Principal
を取得します。- 戻り値:
- 呼び出し元を識別する
Principal
オブジェクト。このメソッドはnull
を返しません。 - 例外:
IllegalStateExceptionSE
- インスタンスがこのメソッドの呼び出しを許可されていない場合、コンテナーは例外をスローします。- 導入:
- EJB 1.1
isCallerInRole
boolean isCallerInRole(StringSE roleName) throws IllegalStateExceptionSE
呼び出し元が特定のセキュリティロールを持っているかどうかをテストします。- パラメーター:
roleName
- セキュリティロールの名前。ロールは、デプロイ記述子で定義されているセキュリティロールの 1 つである必要があります。- 戻り値:
- 呼び出し元が指定されたロールを持っている場合は True。
- 例外:
IllegalStateExceptionSE
- インスタンスがこのメソッドの呼び出しを許可されていない場合、コンテナーは例外をスローします。- 導入:
- EJB 1.1
getUserTransaction
UserTransaction getUserTransaction() throws IllegalStateExceptionSE
トランザクション境界インターフェースを取得します。Bean 管理のトランザクションを持つ Enterprise Bean のみがUserTransaction
インターフェースを使用できます。エンティティ Bean は常にコンテナー管理のトランザクションを使用する必要があるため、セッション管理 Bean または Bean 管理のトランザクションを持つメッセージ駆動型 Bean のみがこのメソッドを呼び出すことができます。- 戻り値:
- Enterprise Bean インスタンスがトランザクションの境界設定に使用できる
UserTransaction
インターフェース。 - 例外:
IllegalStateExceptionSE
- インスタンスがUserTransaction
インターフェースの使用を許可されていない場合(つまり、インスタンスがコンテナー管理のトランザクションを持つ Bean である場合)、コンテナーは例外をスローします。
setRollbackOnly
void setRollbackOnly() throws IllegalStateExceptionSE
現在のトランザクションにロールバックのマークを付けます。トランザクションはロールバック対象として永続的にマークされます。ロールバック対象としてマークされたトランザクションはコミットできません。このメソッドを使用できるのは、コンテナー管理のトランザクションを持つ Enterprise Bean だけです。- 例外:
IllegalStateExceptionSE
- インスタンスがこのメソッドの使用を許可されていない場合(つまり、インスタンスが Bean 管理のトランザクションを持つ Bean である場合)、コンテナーは例外をスローします。
getRollbackOnly
boolean getRollbackOnly() throws IllegalStateExceptionSE
トランザクションがロールバックのみにマークされているかどうかをテストします。Enterprise Bean インスタンスは、この操作を使用して、たとえば、例外がキャッチされた後、現在のトランザクションに代わって計算を続行しても効果がないかどうかをテストできます。このメソッドを使用できるのは、コンテナー管理のトランザクションを持つ Enterprise Bean だけです。- 戻り値:
- 現在のトランザクションがロールバックとしてマークされている場合は true、それ以外の場合は false。
- 例外:
IllegalStateExceptionSE
- インスタンスがこのメソッドの使用を許可されていない場合(つまり、インスタンスが Bean 管理のトランザクションを持つ Bean である場合)、コンテナーは例外をスローします。
getTimerService
TimerService getTimerService() throws IllegalStateExceptionSE
Enterprise Bean タイマーサービスにアクセスします。- 戻り値:
TimerService
オブジェクト。- 例外:
IllegalStateExceptionSE
- インスタンスがこのメソッドの使用を許可されていない場合、コンテナーは例外をスローします (たとえば Bean がステートフルセッション Bean の場合)- 導入:
- EJB 2.1
lookup
ObjectSE lookup(StringSE name) throws IllegalArgumentExceptionSE
java:
名前空間内のリソースを検索します。プライベートコンポーネント名前空間内のエントリを参照する名前は、非修飾文字列として渡すことができます。その場合、ルックアップは"java:comp/env/"
に関連します。例: Enterprise Bean がejb-local-ref
をejb-ref-name
"ejb/BarRef"
で定義すると仮定すると、EJBContext.lookup
への次の 2 つの呼び出しは同等です:ejbContext.lookup("ejb/BarRef")
;ejbContext.lookup("java:comp/env/ejb/BarRef")
;- パラメーター:
name
- エントリの名前- 戻り値:
Object
SE オブジェクト。- 例外:
IllegalArgumentExceptionSE
- 指定された名前がコンポーネントの環境内のエントリと一致しない場合、コンテナーは例外をスローします。- 導入:
- EJB 3.0