title: When to use Stateful session bean over Stateless session bean?
body: <p>A stateful session bean is defined as follows:</p>
  
  <blockquote>
    <p>Stateful Session Beans The state of an object consists of the values
    of its instance variables. In a stateful session bean, the instance
    variables represent the state of a unique client-bean session. Because
    the client interacts (“talks”) with its bean, this state is often
    called the conversational state.</p>
  </blockquote>
  
  <p>A stateless session bean is defined as follows:</p>
  
  <blockquote>
    <p>Stateless Session Beans A stateless session bean does not maintain a
    conversational state with the client. When a client invokes the
    methods of a stateless bean, the bean’s instance variables may contain
    a state specific to that client, but only for the duration of the
    invocation. When the method is finished, the client-specific state
    should not be retained. Clients may, however, change the state of
    instance variables in pooled stateless beans, and this state is held
    over to the next invocation of the pooled stateless bean. Except
    during method invocation, all instances of a stateless bean are
    equivalent, allowing the EJB container to assign an instance to any
    client. That is, the state of a stateless session bean should apply
    accross all clients.</p>
  </blockquote>
  
  <p>The advantage of using a stateless session bean over stateful session bean is as follows:</p>
  
  <blockquote>
    <p>Because stateless session beans can support multiple clients, they can
    offer better scalability for applications that require large numbers
    of clients. Typically, an application requires fewer stateless session
    beans than stateful session beans to support the same number of
    clients.</p>
  </blockquote>
  
  <p>So the question that comes to mind is when one should use stateful session beans? To my naive understanding of the matter, one should stick to use a stateless session bean as he can. </p>
  
  <p>What would be the candidates in which one should use stateful session bean? Any good examples? </p>
  
  <p><a href="http://docs.oracle.com/javaee/5/tutorial/doc/bnbly.html" rel="noreferrer">Session Bean</a></p>