我有一个servlet代码,它调用一个有状态的会话bean代码并增加它的一个int值。但是,当我调用这个servlet并且它下一次是相应的bean时,这个bean就会失去它的状态,并且从开始递增开始。任何人都可以帮助我解决这个问题。我的代码如下:有状态会话Bean - Stateloss问题
public class CounterServlet extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
Counter counter = new Counter() ;
HttpSession clientSession = request.getSession(true);
clientSession.setAttribute("myStatefulBean", counter);
counter.increment() ;
// go to a jsp page
} catch (Exception e) {
out.close();
}
}
}
你可以显示Counter的定义吗?如果它确实是一个EJB,那么你不能用新的来创建它。否则,提到这个问题的EJB是没有意义的。 – 2012-01-03 11:40:16