快速业务通道

JSF 1.2入门,第2部分 JSF生命周期、转换、检验和阶段监听器 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
程序还演示了 <h:selectBooleanCheckbox> 和 <h:inputTextarea> 的用法,见清单 17:

清单 17. 使用 <h:selectBooleanCheckbox> 和 <h:textArea>

<h:inputHidden value="#{contactController.contact.id}" /> ... <%-- active --%> <h:outputLabel value="Active" for="active" accesskey="a" /> <h:selectBooleanCheckbox id="active"   value="#{contactController.contact.active}" /> <h:message for="active" errorClass="errorClass" /> <%-- Description --%> ... <h:outputLabel value="Description" for="description"   accesskey="d" style="font: large;" /> <h:inputTextarea id="description" cols="80" rows="5"   value="#{contactController.contact.description}" /> <h:message for="description" errorClass="errorClass" />

<h:inputTextarea> 有两个额外属性,它们设置为 cols="80" rows="5"。绑定方法与前面一样 。

清单 18 显示在清单 17 中绑定的属性:

清单 18. Contact 类

public class Contact implements Serializable {    ...   private String description;   private boolean active;   protected long id;    ...   public String getDescription() {     return description;   }   public void setDescription(String description) {     this.description = description;   }   public boolean isActive() {     return active;   }   public void setActive(boolean active) {     this.active = active;   }   public long getId() {     return id;   }   public void setId(long id) {     this.id = id;   }     ... }

id、description、type、firstName 和 lastName 属性从 Contact 直接绑定到 UI。group 和 tags 属性不能直接绑定,因为它们没有 JSF 转换器。在本教程后面的一节(“JSF 数据转换器”)中,将讨 论转换器并为这个应用程序创建一些转换器。现在先简要讨论一下 JSF 应用程序的生命周期。

JSF 1.2入门,第2部分 JSF生命周期、转换、检验和阶段监听器(9)

时间:2011-08-09 IBM Richard Hightower

JSF 应用程序的生命周期

与许多人认为的相反,即使不了解 JSF 技术的细节,也可以编写 JSF 应用程序;只需通过开发一个 项目,就可以学到许多东西。但是,了解某些基础知识会大大促进开发工作并节省许多时间。本节暂时抛 开联系人应用程序,谈谈 JSF 请求处理生命周期的六个阶段,看看在每个阶段会发生什么以及各阶段是 如何相互连接的。这些内容会为本教程余下部分的工作提供一些背景知识。

JSF 应用程序生命周期的阶段

JSF 应用程序生命周期的六个阶段是:

恢复视图

应用请求值;处理事件

处理检验;处理事件

更新模型值;处理事件

调用应用程序;处理事件

显示响应

这六个阶段是 JSF 处理表单 GUI 的一般次序。这个列表按照每个阶段可能的执行次序和事件处理进 行排列,但是 JSF 生命周期并不是固定的。可以改变执行的次序,跳过某些阶段或完全脱离生命周期。 例如,如果一个无效的请求值被复制到组件,那么会重新显示当前视图,并可能不执行某些阶段。

还可以选择完全脱离 JSF,比如将处理委托给一个 servlet 或另一个应用程序框架。在这种情况下, 可以执行一个 FacesContext.responseCompl

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号