public abstract class

AbstractStatefulSessionBean

extends AbstractSessionBean
java.lang.Object
   ↳ org.springframework.ejb.support.AbstractEnterpriseBean
     ↳ org.springframework.ejb.support.AbstractSessionBean
       ↳ org.springframework.ejb.support.AbstractStatefulSessionBean

Class Overview

Convenient base class for EJB 2.x stateful session beans (SFSBs). SFSBs should extend this class, leaving them to implement the ejbActivate() and ejbPassivate() lifecycle methods to comply with the requirements of the EJB specification.

Note: Subclasses should invoke the loadBeanFactory() method in their custom ejbCreate() and ejbActivate() methods, and should invoke the unloadBeanFactory() method in their ejbPassivate method.

Note: The default BeanFactoryLocator used by this class's superclass (ContextJndiBeanFactoryLocator) is not serializable. Therefore, when using the default BeanFactoryLocator, or another variant which is not serializable, subclasses must call setBeanFactoryLocator(null) in ejbPassivate(), with a corresponding call to setBeanFactoryLocator(xxx) in ejbActivate() unless relying on the default locator.

Summary

[Expand]
Inherited Constants
From class org.springframework.ejb.support.AbstractEnterpriseBean
Public Constructors
AbstractStatefulSessionBean()
Protected Methods
void loadBeanFactory()
Load a Spring BeanFactory namespace.
void unloadBeanFactory()
Unload the Spring BeanFactory instance.
[Expand]
Inherited Methods
From class org.springframework.ejb.support.AbstractSessionBean
From class org.springframework.ejb.support.AbstractEnterpriseBean
From class java.lang.Object
From interface javax.ejb.SessionBean
From interface org.springframework.ejb.support.SmartSessionBean

Public Constructors

public AbstractStatefulSessionBean ()

Protected Methods

protected void loadBeanFactory ()

Load a Spring BeanFactory namespace. Exposed for subclasses to load a BeanFactory in their ejbCreate() methods. Those callers would normally want to catch BeansException and rethrow it as javax.ejb.CreateException. Unless the BeanFactory is known to be serializable, this method must also be called from ejbActivate(), to reload a context removed via a call to unloadBeanFactory() from the ejbPassivate() implementation.

protected void unloadBeanFactory ()

Unload the Spring BeanFactory instance. The default ejbRemove() method invokes this method, but subclasses which override ejbRemove() must invoke this method themselves.

Unless the BeanFactory is known to be serializable, this method must also be called from ejbPassivate(), with a corresponding call to loadBeanFactory() from ejbActivate().