關于testScope.jsp中request.getAttribute("myUsers")中拋出空指針異常問題
為什么testScope.jsp中request.getAttribute("myUsers")得到的是null呢?在testScope.jsp中不是有<jsp:useBean id="myUsers" class="com.po.Users" scope="page">嗎?應該創建了Users的實例對象myUsers,所以應該得到的跳轉頁面應該是顯示用戶名:null 密碼:null?求解答
2015-08-27
這么說吧,作用域范圍為page的本質對象是pageContext,而作用范圍為request的本質對象為request。
兩個對象在代碼級別是分別創建了一個HashMap<String, Object> attributes,當調用getAttribute時,實際上調用的是不同的attributes,所以request作用范圍的內容與page是無關的。
但是,在頁面轉發時,轉發的是request+response,沒有page,所以在轉發后的頁面中原本的page作用范圍的內容是不存在的。只會新建一些
2015-03-09
個人理解是在testScope.jsp中的request對象是dologin的request對象,所以當request.getAttribute("myUsers")應該返回testScope.jsp中的Users實例對象myUsers,但是其中設置的作用域范圍是page,即在當前頁面實例對象有效,所以得到了null。是這樣理解嗎?