org.apache.struts2.jasper.runtime
Class PageContextImpl

java.lang.Object
  extended by javax.servlet.jsp.JspContext
      extended by javax.servlet.jsp.PageContext
          extended by org.apache.struts2.jasper.runtime.PageContextImpl

public class PageContextImpl
extends javax.servlet.jsp.PageContext

Implementation of the PageContext class from the JSP spec. Also doubles as a VariableResolver for the EL.

Author:
Anil K. Vijendran, Larry Cable, Hans Bergsten, Pierre Delisle, Mark Roth, Jan Luehe, Jacob Hookom

Field Summary
 
Fields inherited from class javax.servlet.jsp.PageContext
APPLICATION, APPLICATION_SCOPE, CONFIG, EXCEPTION, OUT, PAGE, PAGE_SCOPE, PAGECONTEXT, REQUEST, REQUEST_SCOPE, RESPONSE, SESSION, SESSION_SCOPE
 
Method Summary
 java.lang.Object findAttribute(java.lang.String name)
           
 void forward(java.lang.String relativeUrlPath)
           
 java.lang.Object getAttribute(java.lang.String name)
           
 java.lang.Object getAttribute(java.lang.String name, int scope)
           
 java.util.Enumeration<java.lang.String> getAttributeNamesInScope(int scope)
           
 int getAttributesScope(java.lang.String name)
           
 javax.el.ELContext getELContext()
           
 java.lang.Exception getException()
          Returns the exception associated with this page context, if any.
 javax.servlet.jsp.el.ExpressionEvaluator getExpressionEvaluator()
          Provides programmatic access to the ExpressionEvaluator.
 javax.servlet.jsp.JspWriter getOut()
           
 java.lang.Object getPage()
           
 javax.servlet.ServletRequest getRequest()
           
 javax.servlet.ServletResponse getResponse()
           
 javax.servlet.Servlet getServlet()
           
 javax.servlet.ServletConfig getServletConfig()
           
 javax.servlet.ServletContext getServletContext()
           
 javax.servlet.http.HttpSession getSession()
           
 javax.servlet.jsp.el.VariableResolver getVariableResolver()
           
 void handlePageException(java.lang.Exception ex)
           
 void handlePageException(java.lang.Throwable t)
           
 void include(java.lang.String relativeUrlPath)
           
 void include(java.lang.String relativeUrlPath, boolean flush)
           
 void initialize(javax.servlet.Servlet servlet, javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, java.lang.String errorPageURL, boolean needsSession, int bufferSize, boolean autoFlush)
           
 javax.servlet.jsp.JspWriter popBody()
           
static java.lang.Object proprietaryEvaluate(java.lang.String expression, java.lang.Class expectedType, javax.servlet.jsp.PageContext pageContext, ProtectedFunctionMapper functionMap, boolean escape)
          Proprietary method to evaluate EL expressions.
 javax.servlet.jsp.tagext.BodyContent pushBody()
           
 javax.servlet.jsp.JspWriter pushBody(java.io.Writer writer)
           
 void release()
           
 void removeAttribute(java.lang.String name)
           
 void removeAttribute(java.lang.String name, int scope)
           
 void setAttribute(java.lang.String name, java.lang.Object attribute)
           
 void setAttribute(java.lang.String name, java.lang.Object o, int scope)
           
 
Methods inherited from class javax.servlet.jsp.PageContext
getErrorData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

initialize

public void initialize(javax.servlet.Servlet servlet,
                       javax.servlet.ServletRequest request,
                       javax.servlet.ServletResponse response,
                       java.lang.String errorPageURL,
                       boolean needsSession,
                       int bufferSize,
                       boolean autoFlush)
                throws java.io.IOException
Specified by:
initialize in class javax.servlet.jsp.PageContext
Throws:
java.io.IOException

release

public void release()
Specified by:
release in class javax.servlet.jsp.PageContext

getAttribute

public java.lang.Object getAttribute(java.lang.String name)
Specified by:
getAttribute in class javax.servlet.jsp.JspContext

getAttribute

public java.lang.Object getAttribute(java.lang.String name,
                                     int scope)
Specified by:
getAttribute in class javax.servlet.jsp.JspContext

setAttribute

public void setAttribute(java.lang.String name,
                         java.lang.Object attribute)
Specified by:
setAttribute in class javax.servlet.jsp.JspContext

setAttribute

public void setAttribute(java.lang.String name,
                         java.lang.Object o,
                         int scope)
Specified by:
setAttribute in class javax.servlet.jsp.JspContext

removeAttribute

public void removeAttribute(java.lang.String name,
                            int scope)
Specified by:
removeAttribute in class javax.servlet.jsp.JspContext

getAttributesScope

public int getAttributesScope(java.lang.String name)
Specified by:
getAttributesScope in class javax.servlet.jsp.JspContext

findAttribute

public java.lang.Object findAttribute(java.lang.String name)
Specified by:
findAttribute in class javax.servlet.jsp.JspContext

getAttributeNamesInScope

public java.util.Enumeration<java.lang.String> getAttributeNamesInScope(int scope)
Specified by:
getAttributeNamesInScope in class javax.servlet.jsp.JspContext

removeAttribute

public void removeAttribute(java.lang.String name)
Specified by:
removeAttribute in class javax.servlet.jsp.JspContext

getOut

public javax.servlet.jsp.JspWriter getOut()
Specified by:
getOut in class javax.servlet.jsp.JspContext

getSession

public javax.servlet.http.HttpSession getSession()
Specified by:
getSession in class javax.servlet.jsp.PageContext

getServlet

public javax.servlet.Servlet getServlet()

getServletConfig

public javax.servlet.ServletConfig getServletConfig()
Specified by:
getServletConfig in class javax.servlet.jsp.PageContext

getServletContext

public javax.servlet.ServletContext getServletContext()
Specified by:
getServletContext in class javax.servlet.jsp.PageContext

getRequest

public javax.servlet.ServletRequest getRequest()
Specified by:
getRequest in class javax.servlet.jsp.PageContext

getResponse

public javax.servlet.ServletResponse getResponse()
Specified by:
getResponse in class javax.servlet.jsp.PageContext

getException

public java.lang.Exception getException()
Returns the exception associated with this page context, if any.

Added wrapping for Throwables to avoid ClassCastException: see Bugzilla 31171 for details.

Specified by:
getException in class javax.servlet.jsp.PageContext
Returns:
The Exception associated with this page context, if any.

getPage

public java.lang.Object getPage()
Specified by:
getPage in class javax.servlet.jsp.PageContext

include

public void include(java.lang.String relativeUrlPath)
             throws javax.servlet.ServletException,
                    java.io.IOException
Specified by:
include in class javax.servlet.jsp.PageContext
Throws:
javax.servlet.ServletException
java.io.IOException

include

public void include(java.lang.String relativeUrlPath,
                    boolean flush)
             throws javax.servlet.ServletException,
                    java.io.IOException
Specified by:
include in class javax.servlet.jsp.PageContext
Throws:
javax.servlet.ServletException
java.io.IOException

getVariableResolver

public javax.servlet.jsp.el.VariableResolver getVariableResolver()
Specified by:
getVariableResolver in class javax.servlet.jsp.JspContext

forward

public void forward(java.lang.String relativeUrlPath)
             throws javax.servlet.ServletException,
                    java.io.IOException
Specified by:
forward in class javax.servlet.jsp.PageContext
Throws:
javax.servlet.ServletException
java.io.IOException

pushBody

public javax.servlet.jsp.tagext.BodyContent pushBody()
Overrides:
pushBody in class javax.servlet.jsp.PageContext

pushBody

public javax.servlet.jsp.JspWriter pushBody(java.io.Writer writer)
Overrides:
pushBody in class javax.servlet.jsp.JspContext

popBody

public javax.servlet.jsp.JspWriter popBody()
Overrides:
popBody in class javax.servlet.jsp.JspContext

getExpressionEvaluator

public javax.servlet.jsp.el.ExpressionEvaluator getExpressionEvaluator()
Provides programmatic access to the ExpressionEvaluator. The JSP Container must return a valid instance of an ExpressionEvaluator that can parse EL expressions.

Specified by:
getExpressionEvaluator in class javax.servlet.jsp.JspContext

handlePageException

public void handlePageException(java.lang.Exception ex)
                         throws java.io.IOException,
                                javax.servlet.ServletException
Specified by:
handlePageException in class javax.servlet.jsp.PageContext
Throws:
java.io.IOException
javax.servlet.ServletException

handlePageException

public void handlePageException(java.lang.Throwable t)
                         throws java.io.IOException,
                                javax.servlet.ServletException
Specified by:
handlePageException in class javax.servlet.jsp.PageContext
Throws:
java.io.IOException
javax.servlet.ServletException

proprietaryEvaluate

public static java.lang.Object proprietaryEvaluate(java.lang.String expression,
                                                   java.lang.Class expectedType,
                                                   javax.servlet.jsp.PageContext pageContext,
                                                   ProtectedFunctionMapper functionMap,
                                                   boolean escape)
                                            throws javax.servlet.jsp.el.ELException
Proprietary method to evaluate EL expressions. XXX - This method should go away once the EL interpreter moves out of JSTL and into its own project. For now, this is necessary because the standard machinery is too slow.

Parameters:
expression - The expression to be evaluated
expectedType - The expected resulting type
pageContext - The page context
functionMap - Maps prefix and name to Method
Returns:
The result of the evaluation
Throws:
javax.servlet.jsp.el.ELException

getELContext

public javax.el.ELContext getELContext()
Specified by:
getELContext in class javax.servlet.jsp.JspContext


Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.