<c:forEach items="${availableBadges}" var="badge">
<div>
<c:choose>
<c:when test="${badge} == ${user.activeBadge};">
徽章是带有两个字符串字段的枚举。
用户具有正确的getter并返回Badge的实例。 foreach工作正常,但我不能让synatx正确比较枚举?
答案 0 :(得分:5)
您的EL语法无效。 ==
运算符必须与两个操作数位于同一${}
范围内,并且不应有任何尾随分号。
<c:when test="${badge == user.activeBadge}">
这与枚举无关。所有其他类型都应使用相同的语法。