我知道这可能看起来像duplicate question。不幸的是,没有可接受的,有效的答案。甚至OP也面临着一个不同的问题,而不是它所说的问题。
下面的POJO课程:
private boolean admin = false;
private boolean isNormal = false;
public void setAdmin(boolean admin) {
this.admin = admin;
}
public boolean getAdmin() {
return admin;
}
public void setIsNormal(boolean isNormal) {
this.isNormal= isNormal;
}
public boolean getIsNormal() {
return isNormal;
}
// In this class I have many boolean flags like above two. I need to access those in the my JSP
下面的Servlet代码:
System.out.println(responseHeader.getAdmin()); //printed 'True'
session.setAttribute("header", responseHeader);
request.getRequestDispatcher("/DashBoard/Shipper").forward(request, response);
代码下的JSP:
<%StaticHeader sh = (StaticHeader)session.getAttribute("header");//getting the StaticHeader Object from the session
pageContext.setAttribute("headerFromSession",sh); // set the StaticHeader Object again into PageContext (may be unnecessary):
%>
以下方案中的这些 都不起作用,我也没有得到任何例外。
1.) <c:if test="${headerFromSession.getAdmin()}"> //seems to be standard, formal way. But it didn't work
2.) <c:if test="${headerFromSession.Admin}"> // Is this legal? I mean, 'admin' is a private variable.
3.) <c:if test="${headerFromSession.ADMIN}">
4.) <c:if test="${headerFromSession[Admin]}">
5.) <c:if test="${headerFromSession[ADMIN]}">
6.) <c:if test="${headerFromSession}"> //This seems like totally not correct. Because I have many boolean flages which I have already set to the StaticHeader Object