public class WebApplicationContextFacesELResolver extends ELResolver
ELResolver that exposes the Spring WebApplicationContext
instance under a variable named "webApplicationContext".
In contrast to SpringBeanFacesELResolver, this ELResolver variant
does not resolve JSF variable names as Spring bean names. It rather
exposes Spring's root WebApplicationContext itself under a special name,
and is able to resolve "webApplicationContext.mySpringManagedBusinessObject"
dereferences to Spring-defined beans in that application context.
Configure this resolver in your faces-config.xml file as follows:
<application> ... <el-resolver>org.springframework.web.jsf.el.WebApplicationContextFacesELResolver</el-resolver> </application>
SpringBeanFacesELResolver,
FacesContextUtils.getWebApplicationContext(javax.faces.context.FacesContext)| Modifier and Type | Field and Description |
|---|---|
protected Log |
logger
Logger available to subclasses.
|
static String |
WEB_APPLICATION_CONTEXT_VARIABLE_NAME
Name of the exposed WebApplicationContext variable: "webApplicationContext".
|
RESOLVABLE_AT_DESIGN_TIME, TYPE| Constructor and Description |
|---|
WebApplicationContextFacesELResolver() |
| Modifier and Type | Method and Description |
|---|---|
Class<?> |
getCommonPropertyType(ELContext elContext,
Object base) |
Iterator<FeatureDescriptor> |
getFeatureDescriptors(ELContext elContext,
Object base) |
Class<?> |
getType(ELContext elContext,
Object base,
Object property) |
Object |
getValue(ELContext elContext,
Object base,
Object property) |
protected WebApplicationContext |
getWebApplicationContext(ELContext elContext)
Retrieve the
WebApplicationContext reference to expose. |
boolean |
isReadOnly(ELContext elContext,
Object base,
Object property) |
void |
setValue(ELContext elContext,
Object base,
Object property,
Object value) |
convertToType, invokepublic static final String WEB_APPLICATION_CONTEXT_VARIABLE_NAME
protected final Log logger
public WebApplicationContextFacesELResolver()
@Nullable public Object getValue(ELContext elContext, @Nullable Object base, Object property) throws ELException
getValue in class ELResolverELException@Nullable public Class<?> getType(ELContext elContext, @Nullable Object base, Object property) throws ELException
getType in class ELResolverELExceptionpublic void setValue(ELContext elContext, Object base, Object property, Object value) throws ELException
setValue in class ELResolverELExceptionpublic boolean isReadOnly(ELContext elContext, Object base, Object property) throws ELException
isReadOnly in class ELResolverELException@Nullable public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext elContext, Object base)
getFeatureDescriptors in class ELResolverpublic Class<?> getCommonPropertyType(ELContext elContext, Object base)
getCommonPropertyType in class ELResolver@Nullable protected WebApplicationContext getWebApplicationContext(ELContext elContext)
WebApplicationContext reference to expose.
The default implementation delegates to FacesContextUtils,
returning null if no WebApplicationContext found.
elContext - the current JSF ELContextFacesContextUtils.getWebApplicationContext(javax.faces.context.FacesContext)