快速业务通道

怀疑论者的JSF: JSF应用程序的生命周期 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-17
象呈现给 CD 表单,该属性的类型 就是 CD。

开始编码

开始编写这个示例程序的最好方法是遍历它的使用案例:

新增 CD

编辑现有的 CD

根据标题对 CD 进行排序

根据艺术家对 CD 进行排序

第三个使用案例和第四个使用案例的代码基本上是相同的,因此我将向您展示如何根据标 题进行排序,并将第四个使用案例留作练习,请您自行完成。我们很快就会对使用案例进行 编码,但是首先让我们来了解一下完成后的应用程序的页面将是什么样子。

图 4 显示了具有可排序列的 CD 清单页面。

图 4. 具有可排序列的 CD 清单页面

怀疑论者的JSF: JSF应用程序的生命周期 - 编程入门网

图 5 显示了具有分类组件的 CD 表单页面。

图 5. 尚未选择分类的 CD 表单页面

怀疑论者的JSF: JSF应用程序的生命周期 - 编程入门网

图 6 显示了具有分类和子类组件的 CD 表单页面。

图 6. 已经选择了分类和子类组件的 CD 表单页面

怀疑论者的JSF: JSF应用程序的生命周期 - 编程入门网

怀疑论者的JSF: JSF应用程序的生命周期(5)

时间:2011-04-11 IBM Rick Hightower

使用案例 1:新增 CD

在该程序的第一个使用案例中,用户将添加一个新 CD:切换到 CD 清单页面上,点击 Add CD 链接(这是在 listing.jsp 文件中定义的),如清单 1 所示。

清单 1. 在 listing.jsp 中定义的 Add CD 按钮

<h:commandLink action="#{CDManagerBean.addNew}">    <f:verbatim>Add CD</f:verbatim> </h:commandLink>

这个链接被绑定到 CDManagerBean 的 addNew 方法上。这个 addNew 方法在 JSF 生命周 期的调用程序阶段(最后一个阶段)被调用的。操作被使用 JSF 绑定表达式 # {CDManagerBean.addNew} 绑定到这个方法上。CDManagerBean 是这个程序的存储控制器的一 个别名。CDManagerBean 是这个控制器的逻辑名。控制器类是一个在 faces-config.xml 文 件中定义的管理 bean,如清单 2 所示。

清单 2. 在 faces-config.xml 中定义的 StoreController 类

<managed-bean>   <description>The "backing file" bean that backs up the CD application</description>   <managed-bean-name>CDManagerBean</managed-bean-name>   <managed-bean- class>com.arcmind.jsfquickstart.controller.StoreController</managed-bean- class>   <managed-bean-scope>session</managed-bean-scope> </managed-bean>

准备表单

addNew() 方法通过创建一个空 CD 来准备表单,如清单 3 所示。

清单 3. addNew() 创建一个空 CD 表单

[StoreController.java] /** * Prepare the cdForm to add a new CD. * This gets executed before we prompt * the user to add a new CD. * * @return success */ public String addNew() {    if (subCategoryList == null) {      subCategoryList = new HtmlSelectOneListbox();    }    subCategoryList.setRendered(false);    this.cd = new CD();    return "success"; }

addNew() 方法通过创建一个新的 CD 来清空 CD 表单域。这个 CD 表单的域被绑定到 cd 属性的属性中。这个方法还会将正在显示的子类清单置空。

返回成功结果

接下来,addNew() 方法会被调用,控制权被重定向到成功映射页面,即 cdForm.jsp 文 件。cdForm.jsp 文件是在 faces-config.xml 文件中定义的,如清单 4 所示。

清单 4. cdForm.jsp 是 addNew() 的成功映射

<navigation-rule>   <from-view-id>/listing.jsp</from-view-id>   ...   <navigation-case>    <from-action>#{CDManagerBean.addNew}</from-action>    <from-outcome>success</from-outcome>    <to-view-id>/cdForm.jsp</to-view-id>   </navigation-case

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号