Class DelegatingPhaseListenerMulticaster

java.lang.Object
org.springframework.web.jsf.DelegatingPhaseListenerMulticaster
All Implemented Interfaces:
PhaseListener, Serializable, EventListener

public class DelegatingPhaseListenerMulticaster extends Object implements PhaseListener
JSF PhaseListener implementation that delegates to one or more Spring-managed PhaseListener beans coming from the Spring root WebApplicationContext.

Configure this listener multicaster in your faces-config.xml file as follows:

 <application>
   ...
   <phase-listener>
     org.springframework.web.jsf.DelegatingPhaseListenerMulticaster
   </phase-listener>
   ...
 </application>
The multicaster will delegate all beforePhase and afterPhase events to all target PhaseListener beans. By default, those will simply be obtained by type: All beans in the Spring root WebApplicationContext that implement the PhaseListener interface will be fetched and invoked.

Note: This multicaster's getPhaseId() method will always return ANY_PHASE. The phase id exposed by the target listener beans will be ignored; all events will be propagated to all listeners.

This multicaster may be subclassed to change the strategy used to obtain the listener beans, or to change the strategy used to access the ApplicationContext (normally obtained via FacesContextUtils.getWebApplicationContext(FacesContext)).

Since:
1.2.7
Author:
Juergen Hoeller, Colin Sampaleanu
See Also: