Spring DelegatingVariableResolver class can inject Spring Managed
Beans to JSF Managed Beans. Havent tried this in myfaces but might
work.
Cenk Çivici
www.jroller.com/page/cenkcivici
1. Add the resolver to faces-config.xml
<application>
<variable-resolver>org.springframework.web.jsf.DelegatingVariableResolver</variable-resolver>
</application>
2. A business delegate object "ReservationService" which is
configured in Spring xml as follows.
<bean id="reservationService" class="tbs.service.ReservationService">
...
</bean>
3. If you want to have this bean injected to your jsf managed bean
during initialization you need to do the following.
<managed-bean>
<managed-bean-name>pc_reservationPage</managed-bean-name>
<managed-bean-class>tbs.web.ReservationPage</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>reservationService</property-name>
<value>#{reservationService}</value>
</managed-property>
</managed-bean>
4. Last thing you need to have a setter in your jsf managed bean like
public ReservationPage {
protected IReservationService reservationService;
public setReservastionService(IReservationService reservationService) {
this.reservationService = reservationService;
}
...
...
}
On 6/16/05, David Tashima <[EMAIL PROTECTED]> wrote:
> Hey everyone,
>
> I am integrating Spring into my JSF application, and had a question
> about the lifecycle of a JSF managed bean.
>
> I have a JSF managed bean that depends on a Spring managed bean. The
> problem is that I need to do some initialization on the bean after it
> has been created and *after the Spring Bean has been injected*.
>
> Is there any way to define an init() method that gets invoked by JSF
> after the properties have been set?
>
> I am using the OOTB JSF integration piece that comes w/ Spring (not
> the Spring-JSF project stuff... perhaps my problem is addressed
> there?)
>
> Thanks!
> Dave
>