所以我有下面列出的代码,我想从 session 范围设置 ${tempUser} 或从请求范围设置 ${userToEdit} (如果存在)到新变量,这样我就不需要重复我的代码并使用 $ {userBean.login} 等 问题是 userBean 仍然是字符串,并且它抛出异常(没有登录属性)。如何在这里创建用户类型的变量?
<c:set var="userBean" scope="page">${tempUser}</c:set>
<c:if test="${not empty userToEdit}">
<c:set var="userBean">${userToEdit}</c:set>
</c:if>
<div class="section no-pad-bot" id="index-banner">
<div class="container">
<h2 class="header center orange-text">
<c:choose>
<c:when test="${not empty userToEdit}">
Edit user
</c:when>
<c:otherwise>
Add user
</c:otherwise>
</c:choose>
<c:out value="${userBean}"/>
${userBean.login}
</h2>
</div>
</div>
最佳答案
<c:set var="userBean" scope="page" value="${tempUser}" />
<c:if test="${not empty userToEdit}">
<c:set var="userBean" value="${userToEdit}" />
</c:if>
或者简单地说
<c:set var="userBean" value="${(empty userToEdit) ? tempUser : userToEdit}" />
关于java - 无法设置 JSTL 用户变量而不是 java.lang.String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51347912/