javax.ejb

## Interface SessionBean

- All Superinterfaces:
    EnterpriseBean, Serializable

      public interface SessionBean
      extends EnterpriseBean

  The SessionBean interface defines methods that the EJB container uses to notify a session bean instance of the instance's life cycle events.

  As of EJB 3.0 it is no longer required that a session bean class implement this interface.

  Since:
    EJB 1.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `ejbActivate()` The activate method is called when a stateful session bean instance is activated from its "passive" state.
    `void` | `ejbPassivate()` The passivate method is called before a stateful session bean instance enters the "passive" state.
    `void` | `ejbRemove()` A container invokes this method before it ends the life of the session object.
    `void` | `setSessionContext(SessionContext ctx)` Set the associated session context.

- - ### Method Detail

    - #### setSessionContext

          void setSessionContext(SessionContext ctx)
                                 throws EJBException,
                                        RemoteException

      Set the associated session context. The container calls this method after the instance creation.

      The session bean instance should store the reference to the context object in an instance variable.

      This method is called with no transaction context.

      Parameters:
        `ctx` - A SessionContext interface for the instance.
      Throws:
        `EJBException` - Thrown by the method to indicate a failure caused by a system-level error.
        `RemoteException` - This exception is defined in the method signature to provide backward compatibility for applications 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.

    - #### ejbRemove

          void ejbRemove()
                         throws EJBException,
                                RemoteException

      A container invokes this method before it ends the life of the session object. This happens as a result of a client's invoking a remove operation, or when a container decides to terminate the session object after a timeout.

      This method is called with no transaction context.

      Throws:
        `EJBException` - Thrown by the method to indicate a failure caused by a system-level error.
        `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.

    - #### ejbActivate

          void ejbActivate()
                           throws EJBException,
                                  RemoteException

      The activate method is called when a stateful session bean instance is activated from its "passive" state. The instance should acquire any resource that it has released earlier in the `ejbPassivate` method.

      This method is called with no transaction context.

      Throws:
        `EJBException` - Thrown by the method to indicate a failure caused by a system-level error.
        `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.

    - #### ejbPassivate

          void ejbPassivate()
                            throws EJBException,
                                   RemoteException

      The passivate method is called before a stateful session bean instance enters the "passive" state. The instance should release any resources that it can re-acquire later in the `ejbActivate` method.

      After the passivate method completes, the instance must be in a state that allows the container to use the Java Serialization protocol to externalize and store away the instance's state.

      This method is called with no transaction context.

      Throws:
        `EJBException` - Thrown by the method to indicate a failure caused by a system-level error.
        `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.

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.