Package jakarta.ejb
Interface EJBContext
-
- All Known Subinterfaces:
EntityContext
,MessageDrivenContext
,SessionContext
public interface EJBContext
The EJBContext interface provides an instance with access to the container-provided runtime context of an enterprise bean instance.This interface is extended by the
SessionContext
,EntityContext
, andMessageDrivenContext
interfaces to provide additional methods specific to the enterprise interface bean type.- Since:
- EJB 1.0
- See Also:
SessionContext
,MessageDrivenContext
,EntityContext
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Principal
getCallerPrincipal()
Obtain thejava.security.Principal
that identifies the caller.Map<String,Object>
getContextData()
ThegetContextData
method enables a business method, lifecycle callback method, or timeout method to retrieve any interceptor/webservices context associated with its invocation.EJBHome
getEJBHome()
Obtain the enterprise bean's remote home interface.EJBLocalHome
getEJBLocalHome()
Obtain the enterprise bean's local home interface.boolean
getRollbackOnly()
Test if the transaction has been marked for rollback only.TimerService
getTimerService()
Get access to the enterprise bean Timer Service.UserTransaction
getUserTransaction()
Obtain the transaction demarcation interface.boolean
isCallerInRole(String roleName)
Test if the caller has a given security role.Object
lookup(String name)
Lookup a resource within thejava:
namespace.void
setRollbackOnly()
Mark the current transaction for rollback.
-
-
-
Method Detail
-
getEJBHome
EJBHome getEJBHome() throws IllegalStateException
Obtain the enterprise bean's remote home interface.- Returns:
- The enterprise bean's remote home interface.
- Throws:
IllegalStateException
- if the enterprise bean does not have a remote home interface.
-
getEJBLocalHome
EJBLocalHome getEJBLocalHome() throws IllegalStateException
Obtain the enterprise bean's local home interface.- Returns:
- The enterprise bean's local home interface.
- Throws:
IllegalStateException
- if the enterprise bean does not have a local home interface.- Since:
- EJB 2.0
-
getCallerPrincipal
Principal getCallerPrincipal() throws IllegalStateException
Obtain thejava.security.Principal
that identifies the caller.- Returns:
- The
Principal
object that identifies the caller. This method never returnsnull
. - Throws:
IllegalStateException
- The Container throws the exception if the instance is not allowed to call this method.- Since:
- EJB 1.1
-
isCallerInRole
boolean isCallerInRole(String roleName) throws IllegalStateException
Test if the caller has a given security role.- Parameters:
roleName
- The name of the security role. The role must be one of the security roles that is defined in the deployment descriptor.- Returns:
- True if the caller has the specified role.
- Throws:
IllegalStateException
- The Container throws the exception if the instance is not allowed to call this method.- Since:
- EJB 1.1
-
getUserTransaction
UserTransaction getUserTransaction() throws IllegalStateException
Obtain the transaction demarcation interface. Only enterprise beans with bean-managed transactions are allowed to to use theUserTransaction
interface. As entity beans must always use container-managed transactions, only session beans or message-driven beans with bean-managed transactions are allowed to invoke this method.- Returns:
- The
UserTransaction
interface that the enterprise bean instance can use for transaction demarcation. - Throws:
IllegalStateException
- The Container throws the exception if the instance is not allowed to use theUserTransaction
interface (i.e. the instance is of a bean with container-managed transactions).
-
setRollbackOnly
void setRollbackOnly() throws IllegalStateException
Mark the current transaction for rollback. The transaction will become permanently marked for rollback. A transaction marked for rollback can never commit. Only enterprise beans with container-managed transactions are allowed to use this method.- Throws:
IllegalStateException
- The Container throws the exception if the instance is not allowed to use this method (i.e. the instance is of a bean with bean-managed transactions).
-
getRollbackOnly
boolean getRollbackOnly() throws IllegalStateException
Test if the transaction has been marked for rollback only. An enterprise bean instance can use this operation, for example, to test after an exception has been caught, whether it is fruitless to continue computation on behalf of the current transaction. Only enterprise beans with container-managed transactions are allowed to use this method.- Returns:
- True if the current transaction is marked for rollback, false otherwise.
- Throws:
IllegalStateException
- The Container throws the exception if the instance is not allowed to use this method (i.e. the instance is of a bean with bean-managed transactions).
-
getTimerService
TimerService getTimerService() throws IllegalStateException
Get access to the enterprise bean Timer Service.- Returns:
- a
TimerService
object. - Throws:
IllegalStateException
- The Container throws the exception if the instance is not allowed to use this method (e.g. if the bean is a stateful session bean)- Since:
- EJB 2.1
-
lookup
Object lookup(String name) throws IllegalArgumentException
Lookup a resource within thejava:
namespace. Names referring to entries within the private component namespace can be passed as unqualified strings. In that case the lookup will be relative to"java:comp/env/"
. For example, assuming an enterprise bean defines anejb-local-ref
withejb-ref-name
"ejb/BarRef"
the following two calls toEJBContext.lookup
are equivalent :ejbContext.lookup("ejb/BarRef")
;ejbContext.lookup("java:comp/env/ejb/BarRef")
;- Parameters:
name
- Name of the entry- Returns:
- a
Object
object. - Throws:
IllegalArgumentException
- The Container throws the exception if the given name does not match an entry within the component's environment.- Since:
- EJB 3.0
-
getContextData
Map<String,Object> getContextData()
ThegetContextData
method enables a business method, lifecycle callback method, or timeout method to retrieve any interceptor/webservices context associated with its invocation.- Returns:
- the context data that interceptor context associated with this invocation. If there is no context data, an
empty
Map<String,Object>
object will be returned. - Since:
- EJB 3.1
-
-