seam与jsf的结合
    Seam与JSF的结合
1.	采用org.jboss.seam.servlet.SeamListener勾入Servlet容器的生命周期。初始化的工作主要在这个类中完成。
a)	ServletContextListener接口
i.	contextInitialized 在所有filter和servlet初始化之前调用,初始化web application ,建立servlet context时调用(读取web.xml等操作后)
ii.	contextDestroyed 在所有filter和servlet被destory后调用,shut down web application
b)	HttpSessionListener接口
i.	SessionCreated 通知session创建
ii.	sessionDestroyed 通知session失效
2.	org.jboss.seam.jsf.SeamPhaseListener,增强了JSF的整个生命周期。LifeCycle,ServletLifeCycle,FacesLifeCycle关系
名称	作用
LifeCycle	建立或销毁Seam context
ServletLifeCycle	在servlet请求开始和结束的时候建立或者销毁seamContext
FacesLifeCycle	在JSF 请求开始和结束的时候建立或者销毁SeamContext
以FacesLifeCycle为例,他和org.jboss.seam.jsf.SeamPhaseListener配合使用。
在beforeRestoreView的时候,SeamPhaseListener 通过FacesLifeCycle. beginrequest方法,建立除了CoversationContext以外的上下文。
在 afterRestoreView 的时候,SeamPhaseListener 检查RequestParameters中是否存在conversionId,如果存在,则通过FacesLifeCycle. ResumeConversion方法建立conversionContext上下文。(为何不一次创建完成?)
3.	SeamFilter 实现log,redirect,ajax等特殊功能。