JSP EL
Resin 3.1

Documentation
Examples
Changes

Overview
Quick Start
Installation
Command-Line
Configuration
Admin
Amber
Clustering
Caching
Database
Deployment
EJB 3.0
Embedding
Filters
Hessian
HMTP
IoC
JSP
Logging
Messaging
Performance
Quercus/PHP
Remoting
Scheduled Tasks
Security
Server Push
Servlets
Third-party
Troubleshooting
Virtual Hosting
Watchdog
WebApp
XML and XSLT

Introduction
Compilation
EL
JSTL
Directives
Variables
Actions
Applications
Schema for JSP-2.0 .tld files
Velocity syntax
JSP Templates
Compilation
JSP
JSTL

JSP EL is a simple expression language for accessing data.

JSP EL variables

EL Variables come from one of two places:

  1. implicit variable
    pageContext
    pageScope
    requestScope
    sessionScope
    applicationScope
    param
    paramValues
    header
    headerValues
    cookie
    initParam
  2. 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:

<% boolean a = true; %>
      

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}">
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>
      
b is TRUE
      

Compilation
JSP
JSTL
Copyright © 1998-2006 Caucho Technology, Inc. All rights reserved.
Resin ® is a registered trademark, and Quercustm, Ambertm, and Hessiantm are trademarks of Caucho Technology.