【发布时间】:2012-07-20 14:46:02
【问题描述】:
我有一个带有以下内容的 jsp 文件
<c:forEach var="node" items="${tree.children}">
<c:set var="currentNode" value="${node}" scope="request"/>
<c:out value="${currentNode.displayName}" />
<jsp:include page="currentNode.jsp"/>
<br/>
</c:forEach>
currentNode.jsp 目前只包含
X<c:out value="${currentNode.displayName}" />Y
变量currentNode 应该在包含的jsp 文件中可用。例如,请参阅此question。
但即使是这个简单的例子也行不通。我得到以下输出
Node 1 XY
Node 2 XY
Node 3 XY
我期待的地方
Node 1 XNode 1Y
Node 2 XNode 1Y
Node 3 XNode 1Y
我缺少什么来完成这项工作?
【问题讨论】:
-
什么容器实现/版本?如果你只是像往常一样使用
<jsp:param>呢? -
你检查过生成的HTML代码吗?它看起来怎样。我敢打赌,您忘记在包含的 JSP 中声明核心标记库。
-
@JBNizet 你是完全正确的。正在传递参数,但我没有定义核心标记库。我的 c:out 是按字面意思添加到页面中的,而不是解释的。
-
顺便说一句,@JBNizet,把这个作为答案,我会选择它。
-
@DaveIsaacs:我已经添加了答案。很高兴能帮上忙。