如何比较 scriptlet 和 JSTL 之间的变量?
How do I compare variables between a scriptlet and JSTL?
我有 JSP 形式的代码
<%
int count = 1;
request.setAttribute("count", count);
%>
<c:set var="max" scope="request" value="${100}" />
<c:if test="${request.getAttribute('count') < max}" >
...
</c:if>
也就是说,test
将 scriptlet 中定义的变量与使用 <c:set>
定义的变量进行比较。代码失败并在 test
条件行抛出错误。我已经尝试了各种变体,但我在网上找不到任何内容可以清楚地解释 scriptlet 和 JSP EL 之间的交互,让我弄清楚我应该在这里做什么。
如何使用 JSTL 将 scriptlet 变量与 JSTL 变量进行比较?
编辑抛出的错误是
org.apache.jasper.JasperException: An exception occurred processing JSP page
我认为这听起来毫无用处,但以防万一它对任何人都有意义。
您可以直接访问计数变量,因为您已经在请求范围内设置了它:
test="${count < max}"
或 test="${requestScope.count < max}"
我有 JSP 形式的代码
<%
int count = 1;
request.setAttribute("count", count);
%>
<c:set var="max" scope="request" value="${100}" />
<c:if test="${request.getAttribute('count') < max}" >
...
</c:if>
也就是说,test
将 scriptlet 中定义的变量与使用 <c:set>
定义的变量进行比较。代码失败并在 test
条件行抛出错误。我已经尝试了各种变体,但我在网上找不到任何内容可以清楚地解释 scriptlet 和 JSP EL 之间的交互,让我弄清楚我应该在这里做什么。
如何使用 JSTL 将 scriptlet 变量与 JSTL 变量进行比较?
编辑抛出的错误是
org.apache.jasper.JasperException: An exception occurred processing JSP page
我认为这听起来毫无用处,但以防万一它对任何人都有意义。
您可以直接访问计数变量,因为您已经在请求范围内设置了它:
test="${count < max}"
或 test="${requestScope.count < max}"