快速业务通道

第三方JavaServer Faces控件的Faces库定义 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
  <${t}:outputText value=Column Name />   </${f}:facet> </${t}:column>

图 17. 创建一个新的 Child Tags 模板

点击 OK 以保存新的 Child Tags 模板。

保存库定义。

第三方JavaServer Faces控件的Faces库定义(12)

时间:2011-01-26 IBM Scott Paxton

现在返回至测试 JSP 页面,然后从配置板的 Tomahawk drawer 拖拉一个新的 dataTable 组件。

对于选中的 dataTable 标签,切换至 Properties 视图,并点击按钮以添加一个新的子标签。从下拉菜单中选择 New Column (这就是您刚刚为模板指定的名字)。

图 18. 向 dataTable 添加一个新列

注意会向带有合适值的 dataTable 添加一个新列标签,该值会由标签前缀和组件 ID 所取代。

Data Templates 部分

Data Templates 是 Faces Library Definition 部分下面的可选部分,您可以使用该部分来改善 Page Data 视图的行为。当您从 Page Data 视图拖拉数据段到 JSP 页面时,会出现一个向导,以让您选择生成哪一种类型的 UI 控件。通过为组件库中的标签创建一个新的数据模式,在向导中您就有更多的选择了。

在库定义编辑器中有两个类型的数据模式。对于大多数的基本控件类型您可以使用 Property 模式。例如,您可以为 Tomahawk 的 inputDate 组件创建一个模式,并将其与 java.util.Date 类型联系起来。您可以使用 Iterative 模式,来生成与数据集相联系的更加复杂的控件。例如,在拖拉数据列表时,您可以创建一个迭代模板以生成 Tomahawk dataTable 和 column 标签。

库定义中使用的模板系统,与用于产品层次的配置相同,该配置位于 Window > Preferences > Web > JavaServer Faces Tools > Generation Templates 之下。将数据模板置于库定义中,仅仅为与库的所有用户共享库的组件,提供了一个稳定的方式。

最佳实践

现在您已经知道怎样配置库定义的公共元素,以改善使用第三方 JSF 组件的开发经验。在您配置库定义时,您可能想与其他开发者一起共享库。将库定义项目检入到源代码控制系统,将其他开发员的项目检入到他们自己的工作区中,这样可以达到共享库的最佳效果。记住您只需让库定义出现在工作区中,这样就能使工具像您预期的那样工作。

在您构建库定义时还需考虑其他的地方:

如果一个 JSF 组件库需要多个 JAR 文件,那么您最好直接在 Faces Library Definition 向导中直接指定它们。对于这个 Tomahawk 范例,您在向导中只需选择 tomahawk JAR 文件,并将其他的 Apache Commons JAR 文件添加至配置中。这个过程只适用于 Tomahawk,但是有些情况,独立的 JAR 文件需要位于 classpath ,以合适的分析 JSF 组件,同时工具会生成库定义。一个例子便是 MyFaces Trinidad 组件库,对于它您可以指向 trinidad-impl jar 文件,以定义组件库,但是您需要在库定义的第二页添加 trinidad-api jar 文件,以避免产生错误。

正如您在前面部分中看到的那样,如果可以使用新一点的定义的话,工具会使用库定义的版本号,来管理项目资源的升级。这种机理产生了您需要考虑采用的一些习惯:

对组成组件库的 JAR 文件进行重命名,以使用通用的名字。例如,使用 tomahawk.jar 而不是 tomahawk-1.1.8.jar 作为名字。这就使得以后的升级变得更加容易,因为将来您在发布 tomahawk-1.1.9.jar (举个例子)时,您就可以升级库定义并保持相同的文件名了。以后所有对已存在 Web 项目的升级操作,都只需简单的替换 tomahawk.jar ,而不需要其他的步骤了。

如果在您的工作区内对相同的标签库有多个库定义,那么工具会忽略所有的版本号,除了最高版本的版本号。为了让名字更加清晰,如果您要更改 JAR 文件名以删除特定版本的信息,最好将库定义的版本字符串变

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