Implicit Expression Language Objects In JSP:

The most useful feature of the JSTL Expression Language is the implicit objects. It defines for accessing all kinds of application data. JSP developers can directly use implicit objects in an EL expression. They do not need to write extra code for using these objects. some of these objects allow the access to variables held in the particular JSP scopes. All these objects map the respective scope attribute names to their values.

The JSP Expression Language defines various implicit objects:

Objects Name Description
pageContext The instance of pageContext is used to manipulate page attributes
access servletContext, session, request, response objects
requestScope Maps request-scoped variable names to their values
sessionScope Maps session-scoped variable names to their values
applicationScope Maps application-scoped variable names to their values
param Maps a request parameter name to a single value
param values Maps a request parameter name to an array of values
Header Maps a request header name to a single value
headerValues Maps a request header name to an array of values
cookie Maps a cookie name to a single cookie
initParam Maps a context initialization parameter name to a single value

There are three types of implicit EL objects:


Example:
Using implicit EL Objects:
In this example the user is asked to enter some information and then that information is and
displayed along with other information.

1.Index.jsp:

<html>
<body bgcolor="cyan">
<form action="imobjects2.jsp" method="get">
<table border="2">
<tr><th>Using Implicit Objects</th></tr>
<tr><td colspan="2"><h3>pet shopping cart</h3></td></tr>
<tr><td>
Your Email Id:<input type="text" name="email" size="30" /> </td>
</tr>
<tr><td>Whats Type of Pet do you have?
</td></tr>
<tr><td>Cat<input type="checkbox" name="pettype" value="cat"/>
</td></tr>
<tr><td>Dog<input type="checkbox" name="pettype" value="dog"/>
</td></tr>
<tr><td>Rabbit<input type="checkbox" name="pettype" value="rabbit"/>
</td></tr>
<tr><td>Goat<input type="checkbox" name="pettype" value="goat"/>
</td></tr>
<tr><td>Sheep<input type="checkbox" name="pettype" value="sheep"/>
</td></tr>
<tr><td>Horse<input type="checkbox" name="pettype" value="horse"/>
</td></tr>
</table>
<tr><td><input type="submit" value="Submit" ></td><tr>
</table>
</form>
</
body>
</html>

2.The impobject2.jsp:

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<title>Using Implicit Objects</title>
</head>
<body bgcolor="pink"><table border="2" align="center">
<tr><th>Using Implicit Objects</th></tr></table>
<p><ul>
<li><b>Your Email Id Is:</b>${param.email}
<li><b>You have selected pest:</b>
<c:forEach var="pet" items="${paramValues.pettype}">
${pet}
</c:forEach>
<li><b>User-Agent Header:</b> ${header["User-agent"]}
<li><b>JSESSIONID Cookie value:</b>${cookie.JSESSIONID.value}
<li><b>Server:</b>${pageContext.servletContext.serverInfo}
</ul>
</body>
</html>

OUTPUT:

1.Index.jsp:

index.gif

2.The impobject2.jsp:

import.gif