Lookup возвращает новый экземпляр Stateful сессионного компонента

Я использую , , .Java EE 5EJB 3.0Jboss AS 4.3.2

У меня самый простойStateful боб

@Local
public interface IStateBean 
{
}
@Stateful
public class StateBean implements IStateBean
{  
   private static int number = 0;

   @PostConstruct
   void init()
   {
      number++;
      System.out.println("@PostConstruct: " + number);
   }

   @PreDestroy
   void destroy()
   {
      number--;
      System.out.println("@PreDestroy: " + number);  
   }
}

Я делаю поиск в сервлете для этого боба

public class MyServlet extends HttpServlet
{  
   @Override
   public void doGet(final HttpServletRequest aRequest, final HttpServletResponse aResponse) throws ServletException, IOException
   {  
      IStateBean bean = new InitialContext().lookup("app-ear/StateBean/local");
      // ...
   }
}  

Но каждый раз новый экземплярStateBean создано.

я могу позвонитьlookup дважды, но новый экземплярStateBean создается снова

   @Override
   public void doGet(final HttpServletRequest aRequest, final HttpServletResponse aResponse) throws ServletException, IOException
   {  
      IStateBean bean1 = new InitialContext().lookup("app-ear/StateBean/local"); 
      IStateBean bean2 = new InitialContext().lookup("app-ear/StateBean/local"); // new instance is created
      // ...
   }  

Я ожидаю, что тот же экземпляр в той же http-сессии

Отображение сервлета в web.xml

   
      MyServlet
      com.package.MyServlet
     
   
      MyServlet
      *.html
   

Ответы на вопрос(1)

Ваш ответ на вопрос