JSF 生命周期——执行和渲染阶段
JavaServer Faces 应用程序系统因此监督简单应用程序的生命周期阶段,并且还允许您在物理上处理它。 JavaServer Faces 应用程序的生命周期从客户对页面发出 HTTP 请求开始,并在工作人员对页面做出反应时关闭。
JSF 生命周期分为两个基本阶段:
- 执行阶段
- 渲染阶段
1) 执行阶段
在执行阶段,当进行第一次请求时,应用程序看到的是伪造或重建。对于其他产生的需求,执行不同的活动,例如应用请求边界值,对部分值进行转换和批准,用细分值刷新监督豆,并提出应用原理。
执行阶段另外划分为以下子阶段。
- 恢复视图阶段
- 应用请求值阶段
- 流程审批阶段
- 更新模型质量阶段
- 调用应用阶段
- 渲染反应阶段
恢复视图阶段:
当客户需要 JavaServer Faces 页面时,JavaServer Faces 的使用开始重建查看阶段。在这个阶段,JSF 在提到的页面上制作透视图,将事件监督器和验证器连接到视图中的段,并将视图保存在 FacesContext 示例中。
如果页面请求是回发,则与该页面相关的视图现在存在于 FacesContext 示例中。在此阶段,JavaServer Faces 执行通过利用为客户或工作人员节省的状态数据来重新建立视图。
应用请求值阶段:
在这个阶段,段树在回发请求期间重新建立。段树是结构元素的分类。树中的每个段都通过利用其分离(processDecodes())策略从请求边界中移除其新的激励。之后,每个部分的价值都在本地存放。
如果任何解密技术或场合观众成员在当前 FacesContext 示例中调用了 renderResponse 策略,JavaServer Faces 的使用就会跳转到 Render Reaction 阶段。
如果在此阶段出现任何场合,JavaServer Faces 的使用会将这些场合传达给感兴趣的观众。
如果应用程序需要转移到备用 Web 应用程序资产或创建不包含任何 JavaServer Faces 段的反应,它可以调用 FacesContext.responseComplete() 策略。
如果当前请求被识别为中途请求,则从 FacesContext 中恢复不完整的设置,并应用分数处理技术。
流程审批阶段:
在这个阶段,JavaServer Faces 通过使用它的approve() 策略来测量所有注册到segment 上的验证器。它着眼于表明批准准则的细分归属,并将这些标准考虑到该细分市场的附近价值。 JavaServer Faces 还完成对没有将提示特征设置为有效的输入段的更改。
如果任何已获批准的策略或场合观众成员在当前 FacesContext 上调用了 renderResponse 技术,JavaServer Faces 执行将跳转到 Render Reaction 阶段。
如果应用程序需要转移到备用 Web 应用程序资产或产生不包含任何 JavaServer Faces 段的反应,它可以调用 FacesContext.responseComplete 策略。
如果在此阶段已经安排了这些场合,JavaServer Faces 执行会将它们传达给感兴趣的观众。
如果当前请求被区分为分数请求,则从 FacesContext 恢复中途设置,并应用不完整处理策略。
更新模型质量阶段:
在保证信息是合法的之后,它导航部分树并将比较工作者端文章属性设置为段的邻域值。 JavaServer Faces 使用仅刷新信息部分的价值特征所指向的 bean 属性。如果附近的信息无法转换为 bean 属性指示的类别,生命周期会直接推进到渲染反应阶段,因此页面会重新交付,并显示错误。
如果任何 updateModels 技术或任何受众成员在当前 FacesContext 事件中调用了 renderResponse() 策略,则 JavaServer Faces 使用会跳转到 Render Reaction 阶段。
如果应用程序需要转移到备用 Web 应用程序资产或创建不包含任何 JavaServer Faces 段的反应,它可以调用 FacesContext.responseComplete() 技术。
如果在此阶段有任何场合,JavaServer Faces 执行会将它们传达给感兴趣的观众。
如果当前请求被区分为分数请求,则从 FacesContext 中恢复不完整的设置,并应用中途处理技术。
调用应用阶段:
在这个阶段,JSF 处理应用程序级别的情况,例如,呈现结构或连接到另一个页面。
目前,如果应用程序需要转移到备用 Web 应用程序资产或产生不包含任何 JSF 段的反应,它可以调用 FacesContext.responseComplete() 技术。
从那时起,JavaServer Faces 执行将控制转移到呈现反应阶段。
渲染反应阶段:
- 这是 JSF 生命周期的最后阶段。在这个阶段,JSF 组装视图并将权力委托给合适的资产来交付页面。
- 如果这是一个潜在的请求,那么页面上所说的片段将被添加到部件树中。
- 如果这肯定不是潜在的请求,那么这些部分现在已添加到树中,无需再次添加。
- 如果招标是回发,并且在 Apply Solicitation Esteems 阶段、Cycle Approvals 阶段或 Update Model Qualities 阶段出现错误,则在此阶段再次发送第一页。
- 如果页面包含 h:message 或 h:messages 标签,则页面上会显示任何带行的错误消息。
- 在传递视图的实质内容之后,反应的条件被保存,因此随后的请求可以得到它。已保存的状态可供重新建立视图阶段访问。
2)渲染:
在这个阶段,所提到的看到是作为对客户计划的反应而交付的。视图交付是一个将输出生成为 HTML 或 XHTML 的循环。这样,客户端就可以在程序中看到了。
- 伴随的进步是在渲染周期中进行的。
- 当客户要求 index.xhtml 页面时,应用程序被累积。
- 应用程序在安排后执行,并为应用程序构建另一个段树并放入 FacesContext。
- 段树由段和与之相关的监督 bean 属性填充,由 EL 关节说。
- 鉴于段树。组装了另一个视图。
- 该视图作为反应传递给提及的客户。
- 段树因此被粉碎。
- 在随后的请求中,对段树进行了修改,并应用了保存的状态。