JSTL c:if 标签好像没有任何作用

JSTL c:if tag does not seem to have any effect

我有以下代码,我正在尝试从 scriptlet 切换:

    <% if (session.getAttribute("korisnik") == null) { %>
    <a href='login.jsp'>Ulogujte se</a>
    <a href='registracija.jsp'>Registrujte se</a>
    <% } %>

到 el:

    <c:if test="${sessionScope.korisnik == null}">
    <a href='login.jsp'>Ulogujte se2</a>
    <a href='registracija.jsp'>Registrujte se2</a>
    </c:if>

小脚本代码有效(如果用户登录则隐藏登录和注册页面,也就是会话中有数据)但我听说这是不好的做法所以我试图将它切换到 EL,但 EL 部分没有工作,我尝试了无数变体(只是 korisnik,具有会话范围,与 0 等进行比较)。

我确定我在这里遗漏了一些非常明显的东西,我们将不胜感激。

记得像这样导入标签库:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

那么这应该可行:

<c:if test="${sessionScope.korisnik == null}">
  <a href='login.jsp'>Ulogujte se2</a>
  <a href='registracija.jsp'>Registrujte se2</a>
</c:if>

确保标签库位于 <html> 标签上方