Because of scalability reasons, container keeps some objects as active while passivating some of them. The passivation process takes place if the bean is not in a transaction. To help the container's management of resources, EJB specifies two kinds of session beans: stateless and stateful. |
Stateless session beans contain no conversational state and any bean instance can be used for any client invocation since there is no state information between method calls. |
Stateful session bean contains conversational state across method invocations and transactions. |
A state of a conversational bean is defined by its field values and transitive closure of the objects from the session bean's fields by following the object references. |