我正在尝试从JSP访问在servlet中创建的bean。
在我的servlet BlogController.java中,我像这样实例化bean。

    BlogList bloglist = new BlogList();
    if (bloglist.getSize()<1) {
        bloglist.addDummies();
        //Now the size of the bloglist is 10
    }


然后,仍然在这个servlet中,我将jsp称为

RequestDispatcher rd = request.getRequestDispatcher("/Blog7.jsp");
rd.forward(request, response);


在JSP内部,我试图像

<jsp:useBean id="bloglist" type="ub7.BlogList" scope="session"/>


但是bloglist的大小在这里为0,为什么?

最佳答案

您将不得不在servlet本身上将bean添加到会话中:

在servlet中

HttpSession session = request.getSession();
session.setAttribute("bloglist", bloglist);
RequestDispatcher rd = request.getRequestDispatcher("/Blog7.jsp");
rd.forward(request, response);


在jsp中

Blog List count: ${sessionScope.bloglist.size()}

07-24 20:35