| 
 | The Spring Framework | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjavax.faces.el.VariableResolver
org.springframework.web.jsf.WebApplicationContextVariableResolver
public class WebApplicationContextVariableResolver
Special JSF 1.1 VariableResolver that exposes the Spring
 WebApplicationContext instance under a variable named
 "webApplicationContext".
 
In contrast to DelegatingVariableResolver, this VariableResolver
 does not resolve JSF variable names as Spring bean names. It rather
 exposes Spring's root WebApplicationContext itself under a special name.
 JSF-managed beans can then use Spring's WebApplicationContext API to retrieve
 Spring-managed beans, access resources, etc.
 
Configure this resolver in your faces-config.xml file as follows:
 
<application> ... <variable-resolver>org.springframework.web.jsf.WebApplicationContextVariableResolver</variable-resolver> </application>
DelegatingVariableResolver, 
FacesContextUtils.getWebApplicationContext(javax.faces.context.FacesContext)| Field Summary | |
|---|---|
| protected  javax.faces.el.VariableResolver | originalVariableResolver | 
| static String | WEB_APPLICATION_CONTEXT_VARIABLE_NAMEName of the exposed WebApplicationContext variable: "webApplicationContext". | 
| Constructor Summary | |
|---|---|
| WebApplicationContextVariableResolver(javax.faces.el.VariableResolver originalVariableResolver)Create a new WebApplicationContextVariableResolver, using the given original VariableResolver. | |
| Method Summary | |
|---|---|
| protected  javax.faces.el.VariableResolver | getOriginalVariableResolver()Return the original JSF VariableResolver that this resolver delegates to. | 
| protected  WebApplicationContext | getWebApplicationContext(javax.faces.context.FacesContext facesContext)Retrieve the WebApplicationContext reference to expose. | 
|  Object | resolveVariable(javax.faces.context.FacesContext context,
                String name)Check for the special "webApplicationContext" variable first, then delegate to the original VariableResolver. | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
public static final String WEB_APPLICATION_CONTEXT_VARIABLE_NAME
protected final javax.faces.el.VariableResolver originalVariableResolver
| Constructor Detail | 
|---|
public WebApplicationContextVariableResolver(javax.faces.el.VariableResolver originalVariableResolver)
A JSF implementation will automatically pass its original resolver into the constructor of a configured resolver, provided that there is a corresponding constructor argument.
originalVariableResolver - the original VariableResolver| Method Detail | 
|---|
protected final javax.faces.el.VariableResolver getOriginalVariableResolver()
public Object resolveVariable(javax.faces.context.FacesContext context,
                              String name)
                       throws javax.faces.el.EvaluationException
If no WebApplicationContext is available, all requests will be delegated to the original VariableResolver.
resolveVariable in class javax.faces.el.VariableResolverjavax.faces.el.EvaluationExceptionprotected WebApplicationContext getWebApplicationContext(javax.faces.context.FacesContext facesContext)
The default implementation delegates to FacesContextUtils,
 returning null if no WebApplicationContext found.
facesContext - the current JSF context
FacesContextUtils.getWebApplicationContext(javax.faces.context.FacesContext)| 
 | The Spring Framework | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||