|
| |
JSP EL is a simple expression language for accessing
data.
EL Variables come from one of two places:
- implicit variable
pageContext
|
|
pageScope
|
|
requestScope
|
|
sessionScope
|
|
applicationScope
|
|
param
|
|
paramValues
|
|
header
|
|
headerValues
|
|
cookie
|
|
initParam
|
|
- pageContext.findAttribute(varname)
which is like getting the first of:
- page.getAttribute(varname)
- request.getAttribute(varname)
- session.getAttribute(varname)
- application.getAttribute(varname)
So if you have a variable like:
you have to store it as an attribute to make it available as an EL
variable:
<%
boolean b = true;
pageContext.setAttribute("b",new Boolean(b));
%>
<c:if test="">
b is TRUE
</c:if>
|
Here is an example that shows this a bit more:
Making values available as JSP EL variables
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%
boolean a = true;
boolean b = true;
pageContext.setAttribute("b",new Boolean(b));
boolean c = false;
pageContext.setAttribute("c",new Boolean(c));
boolean param = true;
pageContext.setAttribute("param",new Boolean(param));
%>
<%--
this is false because 'a' is not findable by
pageContext.findAttribute(varname)
--%>
<c:if test="${a}">
a is TRUE
</c:if>
<c:if test="${b}">
b is TRUE
</c:if>
<%-- this is false because 'c' was set to false --%>
<c:if test="${c}">
c is TRUE
</c:if>
<%--
This is false because 'param' is an implicit variable
which is used instead of pageContext.findAttribute("param")
--%>
<c:if test="${param}">
param is TRUE
</c:if>
|
Copyright © 1998-2005 Caucho Technology, Inc. All rights reserved.
Resin® is a registered trademark,
and HardCoretm and Quercustm are trademarks of Caucho Technology, Inc. | |
|