| java.lang.Object | ||
| ↳ | VariableResolver | |
| ↳ | org.springframework.web.jsf.DelegatingVariableResolver | |
Known Direct Subclasses
|
JSF 1.1 VariableResolver that first delegates to the
original resolver of the underlying JSF implementation (for resolving
managed-bean objects as defined in faces-config.xml
as well as well-known implicit EL attributes), then to the Spring
root WebApplicationContext (for resolving Spring beans).
Configure this resolver in your faces-config.xml file as follows:
<application> ... <variable-resolver>org.springframework.web.jsf.DelegatingVariableResolver</variable-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>
| Fields | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| logger | Logger available to subclasses | ||||||||||
| originalVariableResolver | |||||||||||
| Public Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Create a new DelegatingVariableResolver, using the given original VariableResolver.
| |||||||||||
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Delegate to the original VariableResolver first, then try to
resolve the variable as Spring bean in the root WebApplicationContext.
| |||||||||||
| Protected Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Retrieve the Spring BeanFactory to delegate bean name resolution to.
| |||||||||||
Return the original JSF VariableResolver that this resolver delegates to.
| |||||||||||
Retrieve the web application context to delegate bean name resolution to.
| |||||||||||
Resolve the attribute via the original JSF VariableResolver.
| |||||||||||
Resolve the attribute as a Spring bean in the ApplicationContext.
| |||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
Logger available to subclasses
Create a new DelegatingVariableResolver, using the given original VariableResolver.
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 |
|---|
Delegate to the original VariableResolver first, then try to resolve the variable as Spring bean in the root WebApplicationContext.
| EvaluationException |
|---|
Retrieve the Spring BeanFactory to delegate bean name resolution to.
The default implementation delegates to getWebApplicationContext.
Can be overridden to provide an arbitrary BeanFactory reference to resolve
against; usually, this will be a full Spring ApplicationContext.
| facesContext | the current JSF context |
|---|
null)Return the original JSF VariableResolver that this resolver delegates to. Used to resolve standard JSF-managed beans.
Retrieve the web application context to delegate bean name resolution to.
The default implementation delegates to FacesContextUtils.
| facesContext | the current JSF context |
|---|
null)Resolve the attribute via the original JSF VariableResolver.
Resolve the attribute as a Spring bean in the ApplicationContext.