Faces Client 组件允许您创建响应效果更好的 Web 页面并减少浏览器与服务器之间的往返次数。Faces
Client 组件使用一项称为客户机端数据高速缓存的技术,它访问 Web 页面中的数据而不必访问服务器上的数据。结果是 Web 页面持续时间更长且响应速度更快。例如,用户要浏览包含 100 个产品的目录。通过使用 Faces Client 组件,可以创建包含 100 个产品的 Web 页面和一次显示 10 个产品的表(称为数据网格)。当第一次访问该页面时,该页面将包括全部 100 个产品的整个数据集;但是,只显示一个子集,即 10 个产品。当用户前进至下一个 Web 页面时,“数据网格”将显示客户机高速缓存的数据中接下来的 10 个产品,而不必执行页面刷新或访问服务器。Faces Client 组件使用 JavaScript™ 功能来控制显示的数据。
对于图和 Web Service 组件这两种 Faces Client 组件,它们是基于 JavaScript™、HTML 和 Macromedia
Flash 的。不需要任何其它浏览器插件。四个 Faces Client 组件专门处理客户机数据:数据网格、树形视图、图和 Web Service。Faces Client 组件之间可以互相进行交互,因此可以将几个 Faces Client 组件放在同一个页面上并定义允许组件交互的事件。例如,帐户列表可以显示在链接至数据网格的树中。当用户使该树中的某个帐户突出显示时,数据网格将显示该帐户的交易。当用户选择另一帐户时,数据网格将显示与所选帐户的一组交易,而无需返回至服务器或重新装入该页面。以下是处理客户机数据的 Faces 组件:
- 映像
- 输入
- 输入 - 文本区域
- 输入 - 密码
- 单选按钮组
- 复选框
- 复选框组
- 列表框 - 单项选择
- 列表框 - 多项选择
- 组合框
- 输出
有关 Faces 组件兼容性的更多信息,请参阅
支持 Faces Client 框架中的 Faces 组件
在大多数 Web 页面上,数据被合并到 HTML 控件中。当用户想要查看页面上未显示的数据时,浏览器会向服务器发送请求。服务器检索该数据,将它与 HTML 合并,并向浏览器发送新页面。借助
Faces Client Web 页面,数据是与控件分开维护的。数据是在控件可绑定至的正式模型中组织的。数据将作为 JavaScript 对象存储在每个
Web 页面的顶部。此设计允许几个控件绑定至同一数据。用户可查看此数据的不同部分(例如,不同帐户)而无需往返于服务器。
Faces Client 的一些优点包括:
- 易于使用允许 Page Designer 在 Web 页面上拖动 Faces Client 组件的 Faces JSP 工具。不需要广泛的编程知识。
- 响应效果更好的 Web 页面和缩小的带宽使得往返于服务器的次数减少。
- 许多可以与其它控件交互的控件。
- 数据网格允许对任何列进行瞬时排序并包括分页控件,例如,下一页、上一页、第一页和最后一页。
- 树形视图会展开和折叠以显示层次关系。
- 一个控件中的事件触发对其它控件的反应。
- 客户机需要的维护较少。客户机软件是一个浏览器:Microsoft® Internet Explorer 5.5 和更高版本;Mozilla 1.3 和更高版本;Netscape 6 和更高版本。
- 是在标准开放式源代码 JavaScript、HTML、JSF(JavaServer Faces)和 EMF(Eclipse 建模框架)上构建的。基于标准的基础结构允许开发者创建其它控件。
- 不需要浏览器插件,但 Macromedia Flash 除外。所有生成的 Web 页面都是用
JavaScript 和 HTML 编写的。