Web ADF的Lifecycle

       今天看了Web ADF Lifecycle,总结一下:
       当从浏览器通过URL发送一个请求给服务器,首先服务器端的Servlet会执行init()方法,调用server()方法,缺省使用doGET()接收请求,处理完然后返回,在web。xml中配置servlet为*。do,就是URL中以*。do的请求都会映射到这个servlet中处理,struts中就是这个样子的,它是重写了server()方法,ActionServelt负责接收所有请求,Action来实际处理。
       在JSF中,FacesServlet又定义了一个“*.jsf”的URL模式,凡是以“*.jsf”出现的请求都会被映射到“Faces Servlet”进行处理。我们看到mapviewer。jsp的请求被转为mapviewer。jsf发送。“在web.xml中配置的ADFServletContextListener监听器和 ADFFilter过滤器。当Web应用启动的时候,ADFServletContextListener负责创建WebApplication(老大);当有用户请求的时候,请求会经过ADFFilter过滤并试图获得该请求的WebSession(老大的小弟),如果为null则创建 WebSession并保存;在WebSession中包含了该会话使用的所有WebContext(老大的小弟的小弟),有了WebContext,剩下的事情都好办了。”
Code

从下面在faces-config。xml中的配置就能看到web ADF的LifeCycle。先WebApplication,在WebSession,在WebContext,有了WebContext,页面加载,先获得resources,resources中又包括了functionalities,最后执行attributes,销毁的过程就相反。
Code

posted @ 2009-08-10 09:37  gaofei_work  阅读(321)  评论(0编辑  收藏  举报