使用Java方法组合JSTL var

时间:2015-01-25 11:59:17

标签: java jsp jstl

如何在java函数中使用Jstl foreach中的Jstl属性$ {theDetail.id}?我已经尝试了很多,但没有任何作用。

<c:forEach items="<%= facade.getAllDetails() %>" var="theDetail">

    // how to use ${theDetail.id} inside this java function
    <c:forEach items="<%= facade.getSomeStuffById(...) %>" vars="theStuff"> 
        ${theStuf.name} 
    </c:forEach>
</c:forEach>

1 个答案:

答案 0 :(得分:2)

永远不要在JSP标记内使用scriptlet表达式。实际上,根本不要使用scriptlet。 JSP标记旨在使用JSP EL表达式。不是scriptlet表达式。

编写代码的方法是,假设facade是某个范围的属性

<c:forEach items="${facade.allDetails}" var="theDetail">

    <c:forEach items="${facade.getSomeStuffById('someHardCodedId')}" var="theStuff"> 
        ${theStuff.name} 
    </c:forEach>
</c:forEach>