<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>PageContextImpl</title>
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="PageContextImpl";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/EvaluationTest.html" title="class in org.apache.taglibs.standard.lang.jstl.test"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/ParserTest.html" title="class in org.apache.taglibs.standard.lang.jstl.test"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html" target="_top">Frames</a></li>
<li><a href="PageContextImpl.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.javax.servlet.jsp.PageContext">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.taglibs.standard.lang.jstl.test</div>
<h2 title="Class PageContextImpl" class="title">Class PageContextImpl</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">javax.servlet.jsp.JspContext</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">javax.servlet.jsp.PageContext</a></li>
<li>
<ul class="inheritance">
<li>org.apache.taglibs.standard.lang.jstl.test.PageContextImpl</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">PageContextImpl</span>
extends <a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></pre>
<div class="block"><p>This is a "dummy" implementation of PageContext whose only
 purpose is to serve the attribute getter/setter API's.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.javax.servlet.jsp.PageContext">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;javax.servlet.jsp.<a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></h3>
<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#APPLICATION">APPLICATION</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#APPLICATION_SCOPE">APPLICATION_SCOPE</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#CONFIG">CONFIG</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#EXCEPTION">EXCEPTION</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#OUT">OUT</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#PAGE">PAGE</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#PAGE_SCOPE">PAGE_SCOPE</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#PAGECONTEXT">PAGECONTEXT</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#REQUEST">REQUEST</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#REQUEST_SCOPE">REQUEST_SCOPE</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#RESPONSE">RESPONSE</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#SESSION">SESSION</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#SESSION_SCOPE">SESSION_SCOPE</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#PageContextImpl--">PageContextImpl</a></span>()</code>
<div class="block">Constructor</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#findAttribute-java.lang.String-">findAttribute</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Searches for the named attribute in page, request, session (if valid), and application scope(s) in order and
 returns the value associated or null.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#forward-java.lang.String-">forward</a></span>(java.lang.String&nbsp;path)</code>
<div class="block">
 This method is used to re-direct, or "forward" the current ServletRequest and ServletResponse to another active
 component in the application.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getAttribute-java.lang.String-">getAttribute</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Returns the object associated with the name in the page scope or null if not found.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getAttribute-java.lang.String-int-">getAttribute</a></span>(java.lang.String&nbsp;name,
            int&nbsp;scope)</code>
<div class="block">Return the object associated with the name in the specified scope or null if not found.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.util.Enumeration</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getAttributeNamesInScope-int-">getAttributeNamesInScope</a></span>(int&nbsp;scope)</code>
<div class="block">Enumerate all the attributes in a given scope.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getAttributesScope-java.lang.String-">getAttributesScope</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Get the scope where a given attribute is defined.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>javax.el.ELContext</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getELContext--">getELContext</a></span>()</code>
<div class="block">Returns the <code>ELContext</code> associated with this <code>JspContext</code>.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>java.lang.Exception</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getException--">getException</a></span>()</code>
<div class="block">The current value of the exception object (an Exception).</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/jsp/el/ExpressionEvaluator.html" title="class in javax.servlet.jsp.el">ExpressionEvaluator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getExpressionEvaluator--">getExpressionEvaluator</a></span>()</code>
<div class="block">Provides programmatic access to the ExpressionEvaluator.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/jsp/JspWriter.html" title="class in javax.servlet.jsp">JspWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getOut--">getOut</a></span>()</code>
<div class="block">The current value of the out object (a JspWriter).</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getPage--">getPage</a></span>()</code>
<div class="block">The current value of the page object (In a Servlet environment, this is an instance of javax.servlet.Servlet).</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/ServletRequest.html" title="interface in javax.servlet">ServletRequest</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getRequest--">getRequest</a></span>()</code>
<div class="block">The current value of the request object (a ServletRequest).</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/ServletResponse.html" title="interface in javax.servlet">ServletResponse</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getResponse--">getResponse</a></span>()</code>
<div class="block">The current value of the response object (a ServletResponse).</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/ServletConfig.html" title="interface in javax.servlet">ServletConfig</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getServletConfig--">getServletConfig</a></span>()</code>
<div class="block">The ServletConfig instance.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/ServletContext.html" title="interface in javax.servlet">ServletContext</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getServletContext--">getServletContext</a></span>()</code>
<div class="block">The ServletContext instance.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/http/HttpSession.html" title="interface in javax.servlet.http">HttpSession</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getSession--">getSession</a></span>()</code>
<div class="block">The current value of the session object (an HttpSession).</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../javax/servlet/jsp/el/VariableResolver.html" title="interface in javax.servlet.jsp.el">VariableResolver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#getVariableResolver--">getVariableResolver</a></span>()</code>
<div class="block">Returns an instance of a VariableResolver that provides access to the implicit objects specified in the JSP
 specification using this JspContext as the context object.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#handlePageException-java.lang.Exception-">handlePageException</a></span>(java.lang.Exception&nbsp;exc)</code>
<div class="block">
 This method is intended to process an unhandled 'page' level exception by forwarding the exception to the
 specified error page for this JSP.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#handlePageException-java.lang.Throwable-">handlePageException</a></span>(java.lang.Throwable&nbsp;exc)</code>
<div class="block">
 This method is intended to process an unhandled 'page' level exception by forwarding the exception to the
 specified error page for this JSP.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#include-java.lang.String-">include</a></span>(java.lang.String&nbsp;path)</code>
<div class="block">
 Causes the resource specified to be processed as part of the current ServletRequest and ServletResponse being
 processed by the calling Thread.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#include-java.lang.String-boolean-">include</a></span>(java.lang.String&nbsp;relativeUrlPath,
       boolean&nbsp;flush)</code>
<div class="block">
 Causes the resource specified to be processed as part of the current ServletRequest and ServletResponse being
 processed by the calling Thread.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#initialize-javax.servlet.Servlet-javax.servlet.ServletRequest-javax.servlet.ServletResponse-java.lang.String-boolean-int-boolean-">initialize</a></span>(<a href="../../../../../../../javax/servlet/Servlet.html" title="interface in javax.servlet">Servlet</a>&nbsp;servlet,
          <a href="../../../../../../../javax/servlet/ServletRequest.html" title="interface in javax.servlet">ServletRequest</a>&nbsp;request,
          <a href="../../../../../../../javax/servlet/ServletResponse.html" title="interface in javax.servlet">ServletResponse</a>&nbsp;response,
          java.lang.String&nbsp;errorPageURL,
          boolean&nbsp;needSession,
          int&nbsp;bufferSize,
          boolean&nbsp;autoFlush)</code>
<div class="block">
 The initialize method is called to initialize an uninitialized PageContext so that it may be used by a JSP
 Implementation class to service an incoming request and response within it's _jspService() method.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#release--">release</a></span>()</code>
<div class="block">
 This method shall "reset" the internal state of a PageContext, releasing all internal references, and preparing
 the PageContext for potential reuse by a later invocation of initialize().</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#removeAttribute-java.lang.String-">removeAttribute</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Remove the object reference associated with the given name from all scopes.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#removeAttribute-java.lang.String-int-">removeAttribute</a></span>(java.lang.String&nbsp;name,
               int&nbsp;scope)</code>
<div class="block">Remove the object reference associated with the specified name in the given scope.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#setAttribute-java.lang.String-java.lang.Object-">setAttribute</a></span>(java.lang.String&nbsp;name,
            java.lang.Object&nbsp;attribute)</code>
<div class="block">Register the name and value specified with page scope semantics.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html#setAttribute-java.lang.String-java.lang.Object-int-">setAttribute</a></span>(java.lang.String&nbsp;name,
            java.lang.Object&nbsp;attribute,
            int&nbsp;scope)</code>
<div class="block">Register the name and value specified with appropriate scope semantics.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.servlet.jsp.PageContext">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;javax.servlet.jsp.<a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></h3>
<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getErrorData--">getErrorData</a>, <a href="../../../../../../../javax/servlet/jsp/PageContext.html#pushBody--">pushBody</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.servlet.jsp.JspContext">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;javax.servlet.jsp.<a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></h3>
<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#popBody--">popBody</a>, <a href="../../../../../../../javax/servlet/jsp/JspContext.html#pushBody-java.io.Writer-">pushBody</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="PageContextImpl--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>PageContextImpl</h4>
<pre>public&nbsp;PageContextImpl()</pre>
<div class="block">Constructor</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="initialize-javax.servlet.Servlet-javax.servlet.ServletRequest-javax.servlet.ServletResponse-java.lang.String-boolean-int-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;void&nbsp;initialize(<a href="../../../../../../../javax/servlet/Servlet.html" title="interface in javax.servlet">Servlet</a>&nbsp;servlet,
                       <a href="../../../../../../../javax/servlet/ServletRequest.html" title="interface in javax.servlet">ServletRequest</a>&nbsp;request,
                       <a href="../../../../../../../javax/servlet/ServletResponse.html" title="interface in javax.servlet">ServletResponse</a>&nbsp;response,
                       java.lang.String&nbsp;errorPageURL,
                       boolean&nbsp;needSession,
                       int&nbsp;bufferSize,
                       boolean&nbsp;autoFlush)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#initialize-javax.servlet.Servlet-javax.servlet.ServletRequest-javax.servlet.ServletResponse-java.lang.String-boolean-int-boolean-">PageContext</a></code></span></div>
<div class="block"><p>
 The initialize method is called to initialize an uninitialized PageContext so that it may be used by a JSP
 Implementation class to service an incoming request and response within it's _jspService() method.

 <p>
 This method is typically called from JspFactory.getPageContext() in order to initialize state.

 <p>
 This method is required to create an initial JspWriter, and associate the "out" name in page scope with this
 newly created object.

 <p>
 This method should not be used by page or tag library authors.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#initialize-javax.servlet.Servlet-javax.servlet.ServletRequest-javax.servlet.ServletResponse-java.lang.String-boolean-int-boolean-">initialize</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>servlet</code> - The Servlet that is associated with this PageContext</dd>
<dd><code>request</code> - The currently pending request for this Servlet</dd>
<dd><code>response</code> - The currently pending response for this Servlet</dd>
<dd><code>errorPageURL</code> - The value of the errorpage attribute from the page directive or null</dd>
<dd><code>needSession</code> - The value of the session attribute from the page directive</dd>
<dd><code>bufferSize</code> - The value of the buffer attribute from the page directive</dd>
<dd><code>autoFlush</code> - The value of the autoflush attribute from the page directive</dd>
</dl>
</li>
</ul>
<a name="release--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>release</h4>
<pre>public&nbsp;void&nbsp;release()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#release--">PageContext</a></code></span></div>
<div class="block"><p>
 This method shall "reset" the internal state of a PageContext, releasing all internal references, and preparing
 the PageContext for potential reuse by a later invocation of initialize(). This method is typically called from
 JspFactory.releasePageContext().

 <p>
 Subclasses shall envelope this method.

 <p>
 This method should not be used by page or tag library authors.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#release--">release</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
</dl>
</li>
</ul>
<a name="setAttribute-java.lang.String-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttribute</h4>
<pre>public&nbsp;void&nbsp;setAttribute(java.lang.String&nbsp;name,
                         java.lang.Object&nbsp;attribute)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#setAttribute-java.lang.String-java.lang.Object-">JspContext</a></code></span></div>
<div class="block">Register the name and value specified with page scope semantics. If the value passed in is <code>null</code>,
 this has the same effect as calling <code>removeAttribute( name, PageContext.PAGE_SCOPE )</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#setAttribute-java.lang.String-java.lang.Object-">setAttribute</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the attribute to set</dd>
<dd><code>attribute</code> - the value to associate with the name, or null if the attribute is to be removed from the page scope.</dd>
</dl>
</li>
</ul>
<a name="setAttribute-java.lang.String-java.lang.Object-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttribute</h4>
<pre>public&nbsp;void&nbsp;setAttribute(java.lang.String&nbsp;name,
                         java.lang.Object&nbsp;attribute,
                         int&nbsp;scope)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#setAttribute-java.lang.String-java.lang.Object-int-">JspContext</a></code></span></div>
<div class="block">Register the name and value specified with appropriate scope semantics. If the value passed in is
 <code>null</code>, this has the same effect as calling <code>removeAttribute( name, scope )</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#setAttribute-java.lang.String-java.lang.Object-int-">setAttribute</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the attribute to set</dd>
<dd><code>attribute</code> - the object to associate with the name, or null if the attribute is to be removed from the specified
              scope.</dd>
<dd><code>scope</code> - the scope with which to associate the name/object</dd>
</dl>
</li>
</ul>
<a name="getAttribute-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttribute</h4>
<pre>public&nbsp;java.lang.Object&nbsp;getAttribute(java.lang.String&nbsp;name)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttribute-java.lang.String-">JspContext</a></code></span></div>
<div class="block">Returns the object associated with the name in the page scope or null if not found.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttribute-java.lang.String-">getAttribute</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the attribute to get</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the object associated with the name in the page scope or null if not found.</dd>
</dl>
</li>
</ul>
<a name="getAttribute-java.lang.String-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttribute</h4>
<pre>public&nbsp;java.lang.Object&nbsp;getAttribute(java.lang.String&nbsp;name,
                                     int&nbsp;scope)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttribute-java.lang.String-int-">JspContext</a></code></span></div>
<div class="block">Return the object associated with the name in the specified scope or null if not found.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttribute-java.lang.String-int-">getAttribute</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the attribute to set</dd>
<dd><code>scope</code> - the scope with which to associate the name/object</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the object associated with the name in the specified scope or null if not found.</dd>
</dl>
</li>
</ul>
<a name="findAttribute-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findAttribute</h4>
<pre>public&nbsp;java.lang.Object&nbsp;findAttribute(java.lang.String&nbsp;name)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#findAttribute-java.lang.String-">JspContext</a></code></span></div>
<div class="block">Searches for the named attribute in page, request, session (if valid), and application scope(s) in order and
 returns the value associated or null.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#findAttribute-java.lang.String-">findAttribute</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the attribute to search for</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value associated or null</dd>
</dl>
</li>
</ul>
<a name="removeAttribute-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAttribute</h4>
<pre>public&nbsp;void&nbsp;removeAttribute(java.lang.String&nbsp;name)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#removeAttribute-java.lang.String-">JspContext</a></code></span></div>
<div class="block">Remove the object reference associated with the given name from all scopes. Does nothing if there is no such
 object.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#removeAttribute-java.lang.String-">removeAttribute</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - The name of the object to remove.</dd>
</dl>
</li>
</ul>
<a name="removeAttribute-java.lang.String-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAttribute</h4>
<pre>public&nbsp;void&nbsp;removeAttribute(java.lang.String&nbsp;name,
                            int&nbsp;scope)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#removeAttribute-java.lang.String-int-">JspContext</a></code></span></div>
<div class="block">Remove the object reference associated with the specified name in the given scope. Does nothing if there is no
 such object.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#removeAttribute-java.lang.String-int-">removeAttribute</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - The name of the object to remove.</dd>
<dd><code>scope</code> - The scope where to look.</dd>
</dl>
</li>
</ul>
<a name="getAttributesScope-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributesScope</h4>
<pre>public&nbsp;int&nbsp;getAttributesScope(java.lang.String&nbsp;name)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttributesScope-java.lang.String-">JspContext</a></code></span></div>
<div class="block">Get the scope where a given attribute is defined.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttributesScope-java.lang.String-">getAttributesScope</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the attribute to return the scope for</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the scope of the object associated with the name specified or 0</dd>
</dl>
</li>
</ul>
<a name="getAttributeNamesInScope-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeNamesInScope</h4>
<pre>public&nbsp;java.util.Enumeration&nbsp;getAttributeNamesInScope(int&nbsp;scope)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttributeNamesInScope-int-">JspContext</a></code></span></div>
<div class="block">Enumerate all the attributes in a given scope.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getAttributeNamesInScope-int-">getAttributeNamesInScope</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>scope</code> - the scope to enumerate all the attributes for</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an enumeration of names (java.lang.String) of all the attributes the specified scope</dd>
</dl>
</li>
</ul>
<a name="getOut--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOut</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/jsp/JspWriter.html" title="class in javax.servlet.jsp">JspWriter</a>&nbsp;getOut()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getOut--">JspContext</a></code></span></div>
<div class="block">The current value of the out object (a JspWriter).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getOut--">getOut</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the current JspWriter stream being used for client response</dd>
</dl>
</li>
</ul>
<a name="getSession--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSession</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/http/HttpSession.html" title="interface in javax.servlet.http">HttpSession</a>&nbsp;getSession()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getSession--">PageContext</a></code></span></div>
<div class="block">The current value of the session object (an HttpSession).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getSession--">getSession</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the HttpSession for this PageContext or null</dd>
</dl>
</li>
</ul>
<a name="getPage--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPage</h4>
<pre>public&nbsp;java.lang.Object&nbsp;getPage()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getPage--">PageContext</a></code></span></div>
<div class="block">The current value of the page object (In a Servlet environment, this is an instance of javax.servlet.Servlet).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getPage--">getPage</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Page implementation class instance associated with this PageContext</dd>
</dl>
</li>
</ul>
<a name="getRequest--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRequest</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/ServletRequest.html" title="interface in javax.servlet">ServletRequest</a>&nbsp;getRequest()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getRequest--">PageContext</a></code></span></div>
<div class="block">The current value of the request object (a ServletRequest).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getRequest--">getRequest</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The ServletRequest for this PageContext</dd>
</dl>
</li>
</ul>
<a name="getResponse--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResponse</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/ServletResponse.html" title="interface in javax.servlet">ServletResponse</a>&nbsp;getResponse()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getResponse--">PageContext</a></code></span></div>
<div class="block">The current value of the response object (a ServletResponse).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getResponse--">getResponse</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the ServletResponse for this PageContext</dd>
</dl>
</li>
</ul>
<a name="getException--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getException</h4>
<pre>public&nbsp;java.lang.Exception&nbsp;getException()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getException--">PageContext</a></code></span></div>
<div class="block">The current value of the exception object (an Exception).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getException--">getException</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>any exception passed to this as an errorpage</dd>
</dl>
</li>
</ul>
<a name="getServletConfig--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServletConfig</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/ServletConfig.html" title="interface in javax.servlet">ServletConfig</a>&nbsp;getServletConfig()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getServletConfig--">PageContext</a></code></span></div>
<div class="block">The ServletConfig instance.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getServletConfig--">getServletConfig</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the ServletConfig for this PageContext</dd>
</dl>
</li>
</ul>
<a name="getServletContext--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServletContext</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/ServletContext.html" title="interface in javax.servlet">ServletContext</a>&nbsp;getServletContext()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getServletContext--">PageContext</a></code></span></div>
<div class="block">The ServletContext instance.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#getServletContext--">getServletContext</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the ServletContext for this PageContext</dd>
</dl>
</li>
</ul>
<a name="forward-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forward</h4>
<pre>public&nbsp;void&nbsp;forward(java.lang.String&nbsp;path)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#forward-java.lang.String-">PageContext</a></code></span></div>
<div class="block"><p>
 This method is used to re-direct, or "forward" the current ServletRequest and ServletResponse to another active
 component in the application.
 </p>
 <p>
 If the <I> relativeUrlPath </I> begins with a "/" then the URL specified is calculated relative to the DOCROOT of
 the <code> ServletContext </code> for this JSP. If the path does not begin with a "/" then the URL specified is
 calculated relative to the URL of the request that was mapped to the calling JSP.
 </p>
 <p>
 It is only valid to call this method from a <code> Thread </code> executing within a
 <code> _jspService(...) </code> method of a JSP.
 </p>
 <p>
 Once this method has been called successfully, it is illegal for the calling <code> Thread </code> to attempt to
 modify the <code>
 ServletResponse </code> object. Any such attempt to do so, shall result in undefined behavior. Typically, callers
 immediately return from <code> _jspService(...) </code> after calling this method.
 </p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#forward-java.lang.String-">forward</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>path</code> - specifies the relative URL path to the target resource as described above</dd>
</dl>
</li>
</ul>
<a name="include-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>include</h4>
<pre>public&nbsp;void&nbsp;include(java.lang.String&nbsp;path)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#include-java.lang.String-">PageContext</a></code></span></div>
<div class="block"><p>
 Causes the resource specified to be processed as part of the current ServletRequest and ServletResponse being
 processed by the calling Thread. The output of the target resources processing of the request is written directly
 to the ServletResponse output stream.
 </p>
 <p>
 The current JspWriter "out" for this JSP is flushed as a side-effect of this call, prior to processing the
 include.
 </p>
 <p>
 If the <I> relativeUrlPath </I> begins with a "/" then the URL specified is calculated relative to the DOCROOT of
 the <code>ServletContext</code> for this JSP. If the path does not begin with a "/" then the URL specified is
 calculated relative to the URL of the request that was mapped to the calling JSP.
 </p>
 <p>
 It is only valid to call this method from a <code> Thread </code> executing within a
 <code> _jspService(...) </code> method of a JSP.
 </p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#include-java.lang.String-">include</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>path</code> - specifies the relative URL path to the target resource to be included</dd>
</dl>
</li>
</ul>
<a name="handlePageException-java.lang.Exception-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>handlePageException</h4>
<pre>public&nbsp;void&nbsp;handlePageException(java.lang.Exception&nbsp;exc)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#handlePageException-java.lang.Exception-">PageContext</a></code></span></div>
<div class="block"><p>
 This method is intended to process an unhandled 'page' level exception by forwarding the exception to the
 specified error page for this JSP. If forwarding is not possible (for example because the response has already
 been committed), an implementation dependent mechanism should be used to invoke the error page (e.g. "including"
 the error page instead).

 <p>
 If no error page is defined in the page, the exception should be rethrown so that the standard servlet error
 handling takes over.

 <p>
 A JSP implementation class shall typically clean up any local state prior to invoking this and will return
 immediately thereafter. It is illegal to generate any output to the client, or to modify any ServletResponse
 state after invoking this call.

 <p>
 This method is kept for backwards compatiblity reasons. Newly generated code should use
 PageContext.handlePageException(Throwable).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#handlePageException-java.lang.Exception-">handlePageException</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exc</code> - the exception to be handled</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../javax/servlet/jsp/PageContext.html#handlePageException-java.lang.Throwable-"><code>PageContext.handlePageException(Throwable)</code></a></dd>
</dl>
</li>
</ul>
<a name="handlePageException-java.lang.Throwable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>handlePageException</h4>
<pre>public&nbsp;void&nbsp;handlePageException(java.lang.Throwable&nbsp;exc)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#handlePageException-java.lang.Throwable-">PageContext</a></code></span></div>
<div class="block"><p>
 This method is intended to process an unhandled 'page' level exception by forwarding the exception to the
 specified error page for this JSP. If forwarding is not possible (for example because the response has already
 been committed), an implementation dependent mechanism should be used to invoke the error page (e.g. "including"
 the error page instead).

 <p>
 If no error page is defined in the page, the exception should be rethrown so that the standard servlet error
 handling takes over.

 <p>
 This method is intended to process an unhandled "page" level exception by redirecting the exception to either the
 specified error page for this JSP, or if none was specified, to perform some implementation dependent action.

 <p>
 A JSP implementation class shall typically clean up any local state prior to invoking this and will return
 immediately thereafter. It is illegal to generate any output to the client, or to modify any ServletResponse
 state after invoking this call.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#handlePageException-java.lang.Throwable-">handlePageException</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exc</code> - the throwable to be handled</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../javax/servlet/jsp/PageContext.html#handlePageException-java.lang.Exception-"><code>PageContext.handlePageException(Exception)</code></a></dd>
</dl>
</li>
</ul>
<a name="include-java.lang.String-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>include</h4>
<pre>public&nbsp;void&nbsp;include(java.lang.String&nbsp;relativeUrlPath,
                    boolean&nbsp;flush)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#include-java.lang.String-boolean-">PageContext</a></code></span></div>
<div class="block"><p>
 Causes the resource specified to be processed as part of the current ServletRequest and ServletResponse being
 processed by the calling Thread. The output of the target resources processing of the request is written directly
 to the current JspWriter returned by a call to getOut().
 </p>
 <p>
 If flush is true, The current JspWriter "out" for this JSP is flushed as a side-effect of this call, prior to
 processing the include. Otherwise, the JspWriter "out" is not flushed.
 </p>
 <p>
 If the <i>relativeUrlPath</i> begins with a "/" then the URL specified is calculated relative to the DOCROOT of
 the <code>ServletContext</code> for this JSP. If the path does not begin with a "/" then the URL specified is
 calculated relative to the URL of the request that was mapped to the calling JSP.
 </p>
 <p>
 It is only valid to call this method from a <code> Thread </code> executing within a
 <code> _jspService(...) </code> method of a JSP.
 </p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/PageContext.html#include-java.lang.String-boolean-">include</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/PageContext.html" title="class in javax.servlet.jsp">PageContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>relativeUrlPath</code> - specifies the relative URL path to the target resource to be included</dd>
<dd><code>flush</code> - True if the JspWriter is to be flushed before the include, or false if not.</dd>
</dl>
</li>
</ul>
<a name="getExpressionEvaluator--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExpressionEvaluator</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/jsp/el/ExpressionEvaluator.html" title="class in javax.servlet.jsp.el">ExpressionEvaluator</a>&nbsp;getExpressionEvaluator()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getExpressionEvaluator--">JspContext</a></code></span></div>
<div class="block">Provides programmatic access to the ExpressionEvaluator. The JSP Container must return a valid instance of an
 ExpressionEvaluator that can parse EL expressions.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getExpressionEvaluator--">getExpressionEvaluator</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A valid instance of an ExpressionEvaluator.</dd>
</dl>
</li>
</ul>
<a name="getVariableResolver--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVariableResolver</h4>
<pre>public&nbsp;<a href="../../../../../../../javax/servlet/jsp/el/VariableResolver.html" title="interface in javax.servlet.jsp.el">VariableResolver</a>&nbsp;getVariableResolver()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getVariableResolver--">JspContext</a></code></span></div>
<div class="block">Returns an instance of a VariableResolver that provides access to the implicit objects specified in the JSP
 specification using this JspContext as the context object.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getVariableResolver--">getVariableResolver</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A valid instance of a VariableResolver.</dd>
</dl>
</li>
</ul>
<a name="getELContext--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getELContext</h4>
<pre>public&nbsp;javax.el.ELContext&nbsp;getELContext()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getELContext--">JspContext</a></code></span></div>
<div class="block">Returns the <code>ELContext</code> associated with this <code>JspContext</code>.

 <p>
 The <code>ELContext</code> is created lazily and is reused if it already exists. There is a new
 <code>ELContext</code> for each <code>JspContext</code>.
 </p>

 <p>
 The <code>ELContext</code> must contain the <code>ELResolver</code> described in the JSP specification (and in
 the javadocs for <a href="../../../../../../../javax/servlet/jsp/JspApplicationContext.html#addELResolver-ELResolver-"><code>JspApplicationContext.addELResolver(ELResolver)</code></a>).
 </p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../javax/servlet/jsp/JspContext.html#getELContext--">getELContext</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../javax/servlet/jsp/JspContext.html" title="class in javax.servlet.jsp">JspContext</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <code>ELContext</code> associated with this <code>JspContext</code>.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/EvaluationTest.html" title="class in org.apache.taglibs.standard.lang.jstl.test"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/taglibs/standard/lang/jstl/test/ParserTest.html" title="class in org.apache.taglibs.standard.lang.jstl.test"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/taglibs/standard/lang/jstl/test/PageContextImpl.html" target="_top">Frames</a></li>
<li><a href="PageContextImpl.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.javax.servlet.jsp.PageContext">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
