學習中遇到的javabean中的scope問題

yangPSO發表於2007-12-30
有下面的兩個頁面:
1.Counter1.jsp:

<%@ page contentType="text/html;charset=GB2312" %>

<html>
<head>
  <title>CH8 - Counter1.jsp</title>
</head>
<body>

 <h2>範圍為 Request的 JavaBean範例程式 - Counter1</h2>

<jsp:useBean id="myBean" scope="request" class="wust.yang.CH8.Counter"/>
<p>您已訪問<font color="red">
<jsp:getProperty name="myBean" property="count"/>
</font>次</p>
<p>歡迎再次訪問</p>

<jsp:include page="Hello.jsp" flush="true"/>

</body>
</html>
<p class="indent">


2.Hello.jsp:

<%@ page contentType="text/html;charset=GB2312" %>

Hello ... 您好感謝您<font color="red"><jsp:getProperty name="myBean" property="count"/></font>次的光臨



在Tomcat5。5。23下執行,結果如下:

範圍為 Request的 JavaBean範例程式 - Counter1

您已訪問 1 次

歡迎再次訪問


Hello.jsp這個頁面的效果無法體現。
應該不是類wust.yang.Counter的設定問題,檢視了一下,Tomcat的work目錄下的Hello_jsp.java,有如下的語句:
out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString(org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(_jspx_page_context.getAttribute("myBean", PageContext.PAGE_SCOPE), "count")));
嘗試修改Counter1.jsp中的scope="application", Hello_jsp.java中還是有上面的語句,即PageContext.PAGE_SCOPE的字樣。

我在Hello.jsp中測得MyBean=null

怎麼回事,我弄了很久沒搞明白,只好向個位請教!


相關文章