使用自定义标记时初始化 jstl 变量



我创建了自己的自定义tag-lib,例如:

<mytaglib:render id="feature.render">

上面tag-lib将使用此 id feature.render并获取一些HTML数据。

我想做的是将上述 id 返回的内容存储在 jstl 变量中。我所做的是:

<c:set var="renderContent"> <mytaglib:render id="feature.render"> </c:set>

但是上面的解决方案不起作用,变量renderContent为空。

当我通过<mytaglib:render id="feature.render">它分开jsp文件并包含该jsp文件来执行上述操作时

<c:set var="renderContent"><jsp:include page="getContent"/></c:set>

jsp页面getContent有:

<mytaglib:render id="feature.render">

它有效。

我不知道为什么它在内联完成时不起作用,为什么放在单独的文件中时它有效。

我想在同一个jsp文件中做。有什么帮助吗?

我只想将一个名为 var 的属性添加到您的标签中。使用它来设置属性名称以公开对象:

<mytaglib:render id="feature.render" var="renderContent"/>

在代码中,将对象设置为页面上下文中的属性:

pageContext.setAttribute(var, yourObject);

最新更新