|
|||||||||
| 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_NAME
Name 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)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||