<c:choose> 未解释,评估所有 <c:when> 和 <c:otherwise> 主体

<c:choose> not interpreted, all <c:when> and <c:otherwise> bodies are evaluated

我想在登录网站时显示用户的状态。我发现最好使用 EL 标签。但没有用。请帮助我。

<c:choose> 

    <c:when test="${null}" >
        ${"Welcome Unknown User"}
    </c:when>

    <c:otherwise>
        <c:out> ${"Welcome dear"} ${SessionStateUser} </c:out>
    </c:otherwise>

</c:choose>

我认为 c:choose -> c:when 块构建不正确。另外,为什么将文本引用为变量?

大概应该是这样的:

<c:choose> 
    <c:when test="${SessionStateUser == null}" >
       Welcome Unknown User
    </c:when>
    <c:otherwise>
       Welcome dear <c:out value="${SessionStateUser}"/>
    </c:otherwise>
</c:choose>

我看不出您需要这一行的原因:var= "test" value = "${SessionStateUser}" - 无论如何,命名变量 test 非常令人困惑,因为 jsp test 属性。