0
我們有一個運行struts 1.2和velocity的成熟應用程序,我需要將一個頁面從vm轉換爲jsp。來自速度用戶的Struts 1.2的JSP
因此,我修改了我的struts-config,將轉發更改爲新的JSP文件,並在JSP中嘗試顯示一些分配給表單bean的數據,但所有表單屬性在JSP中顯示爲空。當我看到表單本身時,我發現它們是不同的對象。所以不知何故,我在Action中使用的表單bean與JSP所看到的不一樣。
任何想法?
<form-beans>
<form-bean name="scheduleDisplayForm" type="web.scheduler.ScheduleDisplayForm"/>
</form-beans>
<action-mappings>
<action path="/displaySchedule"
type="web.scheduler.ScheduleDisplayAction"
name="scheduleDisplayForm" scope="request" parameter="method">
<!--<forward name="success" path="/scheduler/scheduler.vm"/>-->
<forward name="success" path="/scheduler/scheduler.jsp"/>
</action>
</action-mappings>
在我的JSP我只是想這一點:
<%@ page contentType="text/html" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@ taglib prefix="h" uri="http://java.sun.com/jsp/jstl/xml" %>
<%@ taglib prefix="b" uri="http://jakarta.apache.org/struts/tags-bean" %>
<jsp:useBean id="schedule" class="web.scheduler.ScheduleDisplayForm" scope="request"/>
<!-- display the object -->
<%=schedule%>
<!-- shows NULL -->
<%=schedule.getRoomsToDisplay()%>
你能否澄清一下:「當我看到表單本身時,我發現它們是不同的對象。」一點點? – 2010-02-08 13:32:16
Form對象實際上是不同的對象。 在行動我會記錄它,它表明: 在JSP [email protected] 其不同的對象: [email protected] – sproketboy 2010-02-08 13:40:20
你在你的行動和你之間做任何重定向JSP?還要注意元素定位或實例化一個JavaBeans組件,不確定是否正確檢索了這個bean,它沒有找到它並創建一個。請求範圍中的名稱應與「scheduleDisplayForm」相關。作爲一個測試,列出JSP中的所有請求屬性,以查看範圍內的內容,並查看「scheduleDisplayForm」是否存在。 –
2010-02-08 14:20:20