[英]JSTL <c:if> tag - Checking whether Java Bean method returns True
我目前有一个.jsp
文件,如下所示(部分显示):
<jsp:useBean id="cart" class="edu.unsw.comp9321.assignment1.CartBean"
scope="session" />
<tr>
<td><input type="submit" name="cartBtn" value="Go To Checkout"/></td>
<td><input type="submit" name="cartBtn" value="Remove From Cart"/></td>
<c:if test="${cart.isCartListEmpty eq true}">
<td><input type="submit" name="cartBtn" value="Back To Search"/></td>
</c:if>
</tr>
Bean cart
具有以下代码:
public boolean isCartListEmpty(){
if (this.cart.isEmpty())
return true;
return false;
}
问题是我在以下行出现错误:
<c:if test="${cart.isCartListEmpty eq true}">
有人可以告诉我评估bean方法返回的是true
还是false
的正确方法吗?
谢谢您的帮助。
EL ${bean.attribute}
将尝试调用bean
getAttribute()
或isAttribute()
方法。
因此,在您的情况下, ${cart.isCartListEmpty}
将在cart
寻找getIsCartListEmpty()
或isIsCartListEmpty()
方法。
因此,您需要的是${cart.cartListEmpty}
来调用适当的isCartListEmpty()
方法。
旁注:
eq true
部分,因为isCartListEmpty()
已经返回了一个布尔值。 isCartListEmpty()
方法主体以return this.cart.isEmpty()
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.