public interface EntityBean extends EnterpriseBean
Applications written to the EJB 3.0 and later APIs should use the facilities
of the Java Persistence API (javax.persistence
) to model
persistent entities.
Note: Support for entity beans is optional as of EJB 3.2.
Modifier and Type | Method and Description |
---|---|
void |
ejbActivate()
A container invokes this method when the instance
is taken out of the pool of available instances to become associated
with a specific EJB object.
|
void |
ejbLoad()
A container invokes this method to instruct the
instance to synchronize its state by loading it state from the
underlying database.
|
void |
ejbPassivate()
A container invokes this method on an instance before the instance
becomes disassociated with a specific EJB object.
|
void |
ejbRemove()
A container invokes this method before it removes the EJB object
that is currently associated with the instance.
|
void |
ejbStore()
A container invokes this method to instruct the
instance to synchronize its state by storing it to the underlying
database.
|
void |
setEntityContext(EntityContext ctx)
Set the associated entity context.
|
void |
unsetEntityContext()
Unset the associated entity context.
|
void setEntityContext(EntityContext ctx) throws EJBException, java.rmi.RemoteException
This method is called in an unspecified transaction context.
ctx
- An EntityContext interface for the instance. The instance
should store the reference to the context in an instance variable.EJBException
- Thrown by the method to indicate a failure
caused by a system-level error.java.rmi.RemoteException
- This exception is defined in the method
signature to provide backward compatibility for enterprise beans
written for the EJB 1.0 specification. Enterprise beans written
for the EJB 1.1 specification should throw the
javax.ejb.EJBException instead of this exception.
Enterprise beans written for the EJB2.0 and higher specifications
must throw the javax.ejb.EJBException instead of this exception.void unsetEntityContext() throws EJBException, java.rmi.RemoteException
This is the last method that the container invokes on the instance. The Java garbage collector will eventually invoke the finalize() method on the instance.
This method is called in an unspecified transaction context.
EJBException
- Thrown by the method to indicate a failure
caused by a system-level error.java.rmi.RemoteException
- This exception is defined in the method
signature to provide backward compatibility for enterprise beans
written for the EJB 1.0 specification. Enterprise beans written
for the EJB 1.1 specification should throw the
javax.ejb.EJBException instead of this exception.
Enterprise beans written for the EJB2.0 and higher specifications
must throw the javax.ejb.EJBException instead of this exception.void ejbRemove() throws RemoveException, EJBException, java.rmi.RemoteException
This method is called in the transaction context of the remove operation.
RemoveException
- The enterprise Bean does not allow
destruction of the object.EJBException
- Thrown by the method to indicate a failure
caused by a system-level error.java.rmi.RemoteException
- This exception is defined in the method
signature to provide backward compatibility for enterprise beans
written for the EJB 1.0 specification. Enterprise beans written
for the EJB 1.1 specification should throw the
javax.ejb.EJBException instead of this exception.
Enterprise beans written for the EJB2.0 and higher specifications
must throw the javax.ejb.EJBException instead of this exception.void ejbActivate() throws EJBException, java.rmi.RemoteException
This method executes in an unspecified transaction context.
EJBException
- Thrown by the method to indicate a failure
caused by a system-level error.java.rmi.RemoteException
- This exception is defined in the method
signature to provide backward compatibility for enterprise beans
written for the EJB 1.0 specification. Enterprise beans written
for the EJB 1.1 specification should throw the
javax.ejb.EJBException instead of this exception.
Enterprise beans written for the EJB2.0 and higher specifications
must throw the javax.ejb.EJBException instead of this exception.void ejbPassivate() throws EJBException, java.rmi.RemoteException
This method executes in an unspecified transaction context.
EJBException
- Thrown by the method to indicate a failure
caused by a system-level error.java.rmi.RemoteException
- This exception is defined in the method
signature to provide backward compatibility for enterprise beans
written for the EJB 1.0 specification. Enterprise beans written
for the EJB 1.1 specification should throw the
javax.ejb.EJBException instead of this exception.
Enterprise beans written for the EJB2.0 and higher specifications
must throw the javax.ejb.EJBException instead of this exception.void ejbLoad() throws EJBException, java.rmi.RemoteException
This method always executes in the transaction context determined by the value of the transaction attribute in the deployment descriptor.
EJBException
- Thrown by the method to indicate a failure
caused by a system-level error.java.rmi.RemoteException
- This exception is defined in the method
signature to provide backward compatibility for enterprise beans
written for the EJB 1.0 specification. Enterprise beans written
for the EJB 1.1 specification should throw the
javax.ejb.EJBException instead of this exception.
Enterprise beans written for the EJB2.0 and higher specifications
must throw the javax.ejb.EJBException instead of this exception.void ejbStore() throws EJBException, java.rmi.RemoteException
This method always executes in the transaction context determined by the value of the transaction attribute in the deployment descriptor.
EJBException
- Thrown by the method to indicate a failure
caused by a system-level error.java.rmi.RemoteException
- This exception is defined in the method
signature to provide backward compatibility for enterprise beans
written for the EJB 1.0 specification. Enterprise beans written
for the EJB 1.1 specification should throw the
javax.ejb.EJBException instead of this exception.
Enterprise beans written for the EJB2.0 and higher specifications
must throw the javax.ejb.EJBException instead of this exception.