Passivation and activation are two
phases of a resource management technique that reduces the number of bean
instances needed to service all clients. Passivation is the process of
disassociating a bean instance from its EJB object so that the instance can be
reused or evicted to conserve memory. Activation is the process of associating a
bean instance with an EJB object so that it can service a request. Beans are
passivated when there is a lull in their use and activated when the EJB object
receives a client request.
The java.ejb.SessionBean and javax.ejb.EntityBean interface
include two callback methods that notify a bean instance when it is about to
passivated or activated. The ejbPassivate( ) method notifies a bean
that it is about to passivated; the ejbActivate( ) method notifies a
bean that it is about to activated.
The mechanisms employed in passivation and activation change depending on the
bean type. Stateful beans are usually evicted, while entity beans and stateless
beans are pooled. A more detailed account of how different bean types passivated
and activated is found under the FAQs for that type.