Package org.springframework.web.jsf.el
Class SpringBeanFacesELResolver
- java.lang.Object
- javax.el.ELResolver
- org.springframework.beans.factory.access.el.SpringBeanELResolver
- org.springframework.web.jsf.el.SpringBeanFacesELResolver
public class SpringBeanFacesELResolver extends SpringBeanELResolver
JSFELResolver
that delegates to the Spring rootWebApplicationContext
, resolving name references to Spring-defined beans.Configure this resolver in your
faces-config.xml
file as follows:<application> ... <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver> </application>
All your JSF expressions can then implicitly refer to the names of Spring-managed service layer beans, for example in property values of JSF-managed beans:<managed-bean> <managed-bean-name>myJsfManagedBean</managed-bean-name> <managed-bean-class>example.MyJsfManagedBean</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> <managed-property> <property-name>mySpringManagedBusinessObject</property-name> <value>#{mySpringManagedBusinessObject}</value> </managed-property> </managed-bean>
with "mySpringManagedBusinessObject" defined as Spring bean in applicationContext.xml:<bean id="mySpringManagedBusinessObject" class="example.MySpringManagedBusinessObject"> ... </bean>
- Since:
- 2.5
- Author:
- Juergen Hoeller
- See Also:
WebApplicationContextFacesELResolver
,FacesContextUtils.getRequiredWebApplicationContext(javax.faces.context.FacesContext)
Field Summary
Fields inherited from class org.springframework.beans.factory.access.el.SpringBeanELResolver
logger
Fields inherited from class javax.el.ELResolver
RESOLVABLE_AT_DESIGN_TIME, TYPE
Constructor Summary
Constructors Constructor Description SpringBeanFacesELResolver()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected BeanFactory
getBeanFactory(ELContext elContext)
This implementation delegates togetWebApplicationContext(javax.el.ELContext)
.protected WebApplicationContext
getWebApplicationContext(ELContext elContext)
Retrieve the web application context to delegate bean name resolution to.Methods inherited from class org.springframework.beans.factory.access.el.SpringBeanELResolver
getCommonPropertyType, getFeatureDescriptors, getType, getValue, isReadOnly, setValue
Methods inherited from class javax.el.ELResolver
invoke
Constructor Detail
SpringBeanFacesELResolver
public SpringBeanFacesELResolver()
Method Detail
getBeanFactory
protected BeanFactory getBeanFactory(ELContext elContext)
This implementation delegates togetWebApplicationContext(javax.el.ELContext)
. Can be overridden to provide an arbitrary BeanFactory reference to resolve against; usually, this will be a full Spring ApplicationContext.- Specified by:
getBeanFactory
in classSpringBeanELResolver
- Parameters:
elContext
- the current JSF ELContext- Returns:
- the Spring BeanFactory (never
null
)
getWebApplicationContext
protected WebApplicationContext getWebApplicationContext(ELContext elContext)
Retrieve the web application context to delegate bean name resolution to.The default implementation delegates to FacesContextUtils.
- Parameters:
elContext
- the current JSF ELContext- Returns:
- the Spring web application context (never
null
) - See Also:
FacesContextUtils.getRequiredWebApplicationContext(javax.faces.context.FacesContext)