<c:out value='${(loginUserOrgId > 0) and (loginUserOrgId==ItemList.organisationid)}'/>
печатает TRUE
.
Но печатается ли это правда, когда вы используете этот?
<c:if test='${loginUserOrgId > 0 && loginUserOrgId==ItemList.organisationid}'/>
true
</c:if>
Всегда используйте оператор &&
для условного И проверки JSTL
Также у вас есть только один if-checking
. У вас нет условия else
. Так почему бы не использовать более простые теги <c:if>
, например:
<display:table class="displayTable" id="ItemList"
name="${sessionScope.myList}" requestURI="list.action"
pagesize="15" defaultsort="2" defaultorder="ascending" sort="list">
<c:if test="${loginUserOrgId > 0 && loginUserOrgId == ItemList.organisationid}">
<display:column class="colOp" href="edit.action" paramId="itemId"
paramProperty="itemId">Edit</display:column>
</c:if>
</display:table>
Используйте <c:choose>
только тогда, когда вам нужно if
--- else if
--- else
как проверка состояния.
<c:choose>
<c:when test="${condition}">
true value
</c:when>
<c:otherwise>
false value
</c:otherwise>
</c:choose>