我有一个共同的JSP包含在其他页面中;它必须从bean中一般显示某个列表。
所有主JSP都使用该bean的某个子类。
在struts-config.xml中,假设我的Action Form bean有一个特定的定义作为例子,
<form-bean name="rr5YearBudgetForm" type="myapp.form.My5YearBudgetActionForm" />
公共JSP需要以一般方式检查该bean的属性(使用我传入的bean);这些是所有表单bean都支持的属性。现在,使用下面的特定Form Bean进行硬编码,但它必须适用于传入的任何bean。
<c:if
test="${rr5YearBudgetForm.saved == true || fn:length(rr5YearBudgetForm.budgetPeriods) > 1}">
问题是,如何传入包含我的表单bean的特定变量?我尝试了这个简单的c:set var,但它定义了一个没有属性的字符串。
调用JSP
<c:set var="budgetForm" value="rr5YearBudgetForm" scope="request" />
<%@ include file="common.jsp" %>
Common JSP
<c:if test="${budgetForm.saved == true || fn:length(budgetForm.budgetPeriods) > 1}">
但这不起作用。我需要一种传递实际bean而不是字符串的方法。
答案 0 :(得分:0)
请尝试bean标记:
<s:bean name="com.mkyong.common.action.HelloBean" var="hello">
<s:param name="msg">Hello Bean Tag</s:param>
</s:bean>
此标记库包含用于访问bean及其属性的标记,以及通过脚本变量和页面范围属性定义页面其余部分可访问的新bean(基于这些访问)。