org.apache.jasper.runtime
Class JspApplicationContextImpl

java.lang.Object
  extended by org.apache.jasper.runtime.JspApplicationContextImpl
All Implemented Interfaces:
javax.servlet.jsp.JspApplicationContext

public class JspApplicationContextImpl
extends java.lang.Object
implements javax.servlet.jsp.JspApplicationContext

Implementation of JspApplicationContext

Author:
Jacob Hookom

Constructor Summary
JspApplicationContextImpl()
           
 
Method Summary
 void addELContextListener(javax.el.ELContextListener listener)
          Registers a ELContextListeners so that context objects can be added whenever a new ELContext is created.
 void addELResolver(javax.el.ELResolver resolver)
          Adds an ELResolver to affect the way EL variables and properties are resolved for EL expressions appearing in JSP pages and tag files.
 ELContextImpl createELContext(javax.servlet.jsp.JspContext context)
           
 javax.el.ExpressionFactory getExpressionFactory()
          Returns a factory used to create ValueExpressions and MethodExpressions so that EL expressions can be parsed and evaluated.
static JspApplicationContextImpl getInstance(javax.servlet.ServletContext context)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JspApplicationContextImpl

public JspApplicationContextImpl()
Method Detail

addELContextListener

public void addELContextListener(javax.el.ELContextListener listener)
Description copied from interface: javax.servlet.jsp.JspApplicationContext
Registers a ELContextListeners so that context objects can be added whenever a new ELContext is created.

At a minimum, the ELContext objects created will contain a reference to the JspContext for this request, which is added by the JSP container. This is sufficient for all the default ELResolvers listed in JspApplicationContext.addELResolver(javax.el.ELResolver). Note that JspContext.class is used as the key to ELContext.putContext() for the JspContext object reference.

This method is generally used by frameworks and applications that register their own ELResolver that needs context other than JspContext. The listener will typically add the necessary context to the ELContext provided in the event object. Registering a listener that adds context allows the ELResolvers in the stack to access the context they need when they do a resolution.

Specified by:
addELContextListener in interface javax.servlet.jsp.JspApplicationContext
Parameters:
listener - The listener to be notified when a new ELContext is created.

getInstance

public static JspApplicationContextImpl getInstance(javax.servlet.ServletContext context)

createELContext

public ELContextImpl createELContext(javax.servlet.jsp.JspContext context)

addELResolver

public void addELResolver(javax.el.ELResolver resolver)
                   throws java.lang.IllegalStateException
Description copied from interface: javax.servlet.jsp.JspApplicationContext
Adds an ELResolver to affect the way EL variables and properties are resolved for EL expressions appearing in JSP pages and tag files.

For example, in the EL expression ${employee.lastName}, an ELResolver determines what object "employee" references and how to find its "lastName" property.

When evaluating an expression, the JSP container will consult a set of standard resolvers as well as any resolvers registered via this method. The set of resolvers are consulted in the following order:

It is illegal to register an ELResolver after the application has received any request from the client. If an attempt is made to register an ELResolver after that time, an IllegalStateException is thrown.

This restriction is in place to allow the JSP container to optimize for the common case where no additional ELResolvers are in the chain, aside from the standard ones. It is permissible to add ELResolvers before or after initialization to a CompositeELResolver that is already in the chain.

It is not possible to remove an ELResolver registered with this method, once it has been registered.

Specified by:
addELResolver in interface javax.servlet.jsp.JspApplicationContext
Parameters:
resolver - The new ELResolver
Throws:
java.lang.IllegalStateException - if an attempt is made to call this method after all ServletContextListeners have had their contextInitialized methods invoked.

getExpressionFactory

public javax.el.ExpressionFactory getExpressionFactory()
Description copied from interface: javax.servlet.jsp.JspApplicationContext
Returns a factory used to create ValueExpressions and MethodExpressions so that EL expressions can be parsed and evaluated.

Specified by:
getExpressionFactory in interface javax.servlet.jsp.JspApplicationContext
Returns:
A concrete implementation of the an ExpressionFactory.


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