JSF 1.2入门,第2部分 JSF生命周期、转换、检验和阶段****** - 编程入门网
---- BEFORE PHASE APPLY_REQUEST_VALUES 2
------ AFTER PHASE APPLY_REQUEST_VALUES 2
------ BEFORE PHASE PROCESS_VALIDATIONS 3
GroupConverter.getAsObject
ContactController.getAvailableGroups()
ZipCodeValidator.validate()
ContactValidators.validatePhone()
TagConverter.getAsObject
TagConverter.getAsObject
ContactController.getAvailableTags()
ContactController.getAvailableTags()
------ AFTER PHASE PROCESS_VALIDATIONS 3
------ BEFORE PHASE RENDER_RESPONSE 6
ContactController.getAvailableGroups()
GroupConverter.getAsString
GroupConverter.getAsString
GroupConverter.getAsString
ContactController.getAvailableTags()
TagConverter.getAsString
TagConverter.getAsString
TagConverter.getAsString
TagConverter.getAsString
ContactController.getContacts()
------ AFTER PHASE RENDER_RESPONSE 6
REQUEST END
在处理检验阶段,为选择的组调用 GroupConverter.getAsObject() 方法。调用 TagConverter.getAsObject() 两次,分别针对选择的每个标记。在处理检验阶段,调用前面编写的定制 检验器 — ZipCodeValidator.validate() 和 ContactValidators.validatePhone()。在显示响应阶段, 为可用组和可用标记列表中的每个对象,调用转换器的 getAsString() 方法。 现在可以假设,在 ContactController.getAvailableGroups() 和 ContactController.getAvailableTags() 每次访问数据库时,您需要访问数据库 4 次才能获得组列表和 标记列表。您可能希望添加一些逻辑,以便只为每个请求访问数据库一次。例如,可以只在数据还未装载 过的情况下,才从动作装载数据。 JSF 1.2入门,第2部分 JSF生命周期、转换、检验和阶段******(19)时间:2011-08-09 IBM Richard Hightower提交有效表单时的输出见清单 47: 清单 47. 完整的表单提交处理过程
清单 47 包含请求生命周期的所有阶段。注意,这里经过了 INVOKE_APPLICATION 阶段并调用了 persist():ContactController.persist()。 添加一个对象级检验框架 可以使用 PhaseListener 捕捉阶段******事件并改变 JSF 处理请求的方式。假设您希望在 JSF 中添 加自己的对象级检验框架。可以使用清单 48 这样的 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |