核心控制器-FacesServlet FacesServlet为JSF的核心控制类。JSF应用启动时 会初始化FacesServlet,调用其nit0方法: ● 初始化FacesContextFactory: √FacesContextFactory用于创a建FacesContext; √FacesContext包括所有关于当前用户请求的必要信息(如组件 树等),用户程序可通过FacesContext>对象获得Web对象。 ● 初始化LifeCycle对象(对应到6个生命周期阶段): √可以看作是一个过滤器链(Filter Chain)。 LifeCycle对象分6个阶段处理FacesContext.对象: ●手 整个JSF请求处理过程实际上就是一个被包装为 FacesContextl的用户请求通过类似于一个过滤器链的 LifeCycle的处理过程。 JSF概述 11。 品北农林科教大学信息工程学院本科生课程
核心控制器 - FacesServlet JSF概述 •11 信息工程学院本科生课程 ❖ FacesServlet为JSF的核心控制类。JSF应用启动时 会初始化FacesServlet,调用其init()方法: ⚫ 初始化FacesContextFactory: ✓ FacesContextFactory用于创建FacesContext; ✓ FacesContext包括所有关于当前用户请求的必要信息(如组件 树等),用户程序可通过FacesContext对象获得Web对象。 ⚫ 初始化LifeCycle对象(对应到6个生命周期阶段): ✓ 可以看作是一个过滤器链(Filter Chain)。 ❖ LifeCycle对象分6个阶段处理FacesContext对象: ⚫ 整个JSF请求处理过程实际上就是一个被包装为 FacesContext的用户请求通过类似于一个过滤器链的 LifeCycle的处理过程
web.xml中配置FacesServlet <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class> javax.faces.webapp.FacesServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.faces</url-pattern> </servlet-mapping> ·web.xml示例 JSF概述 12。西北农林升大学信息工程学院本科生课程
web.xml中配置FacesServlet JSF概述 •12 信息工程学院本科生课程 <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class> javax.faces.webapp.FacesServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.faces</url-pattern> </servlet-mapping> • web.xml示例
配置文件faces-config.xml <managed-bean> <managed-bean-name>userBean</managed-bean-name> <managed-bean-class>common.User</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean> <navigation-rule> <display-name>loginForm</display-name> <from-view-id>/loginForm.jsp</from-view-id> <navigation-case> <from-outcome>success</from-outcome> <to-view-id>/welcome.jsp</to-view-id> </navigation-case> <navigation-case> <from-outcome>failure</from-outcome> <to-view-id>/error.jsp</to-view-id> </navigation-case> ·faces-.config.xml示例 <navigation-rule> JSF概述 13。 西北农林科教大学信息工程学院本科生课程
配置文件faces-config.xml JSF概述 •13 信息工程学院本科生课程 <managed-bean> <managed-bean-name>userBean</managed-bean-name> <managed-bean-class>common.User</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean> <navigation-rule> <display-name>loginForm</display-name> <from-view-id>/loginForm.jsp</from-view-id> <navigation-case> <from-outcome>success</from-outcome> <to-view-id>/welcome.jsp</to-view-id> </navigation-case> <navigation-case> <from-outcome>failure</from-outcome> <to-view-id>/error.jsp</to-view-id> </navigation-case> </navigation-rule> • faces-config.xml示例
JSF工作原理 FacesServlet 2.把控制权交给 1.创建 Lifecycle FacesContext Lifecycle FacesContext 3.分6个阶段处理 FacesContext JSF概述 14,品北农林升大学信息工程学院本科生课程
JSF工作原理 JSF概述 •14 信息工程学院本科生课程 FacesContext Lifecycle 1. 创建 FacesContext 2. 把控制权交给 Lifecycle 3. 分6个阶段处理 FacesContext FacesServlet
JSF几个核心概念 JSF UI组件模型: ●UI组件 ●转换器 ●验证器 ●事件处理器 ●呈现器等 JSF组件标签 冬受管bean ”导航模型 ~请求处理生命周期 JSF概述 ·15。西北农林科教大学信息工程学院本科生课程
❖JSF UI组件模型: ⚫ UI组件 ⚫ 转换器 ⚫ 验证器 ⚫ 事件处理器 ⚫ 呈现器等 ❖ JSF组件标签 ❖ 受管bean ❖ 导航模型 ❖ 请求处理生命周期 JSF几个核心概念 JSF概述 •15 信息工程学院本科生课程