用JavaBean数据组件集成JSF应用程序与EJB(1)
2008-01-05 10:29:35 来源:WEB开发网核心提示:引言这一系列文章展示了 WebSphere® Studio V5.1.1 中的 java™ Server Faces Technology PReview 的特征,本文是其中的第 4 部分,用JavaBean数据组件集成JSF应用程序与EJB(1),该系列文章包括以下几个部分:第 1 部分:创建 J
引言
这一系列文章展示了 WebSphere® Studio V5.1.1 中的 java™ Server Faces Technology PReview 的特征,本文是其中的第 4 部分。该系列文章包括以下几个部分:
第 1 部分:创建 JSF Web 项目和页面模板
第 2 部分:创建 JSF 提交表单
第 3 部分:创建通过 Web Data Objects(WDO,很快就会成为 SDO:Service Data Objects)访问数据的 JSF 应用程序
第 4 部分:使用 Action Handlers 和 JavaBean 数据组件集成 JSF 应用程序与 Enterprise Java Beans
第 5 部分:使用 Web 服务代理组件创建 JSF Web 服务客户端。
在文章系列的第 3 部分中,我们看到了 JSF 应用程序如何利用 Service Data Object(SDO)技术来访问数据。在本文中,我们将会看到 JSF 如何利用现有的 J2EE 技术。我们将会创建一个调用现有的 EJB 应用程序的 JSF 页面,并在兼顾 JSF 的 RAD 性质的前提下运用 JavaBean Data 控制来显示 EJB 调用结果。另外,我们将会使用 Quick Edits 视图来编写 Action Handler,以便调用现有的无状态会话 Bean。
要想完成这些练习,您需要下载包含在本文中的资料。万一您还没完成第 3 部分,下载文件包含了解决方案;请按照第 3 部分所描述的方法导入该 EAR 文件。要想运行示例,您还需要按照第 3 部分所阐述的方法创建数据库;导入解决方案之后,请按照第 3 部分最后一节描述的方法运行应用程序,这样就可在用于此练习的 Server Configuration 中创建 JDBC 数据源。
导入并安装 StockSystemEJB
现在我们来为第 2 部分创建的 Stock Data Page 创建下一个 JSF 结果页面。首先我们导入现有的 EJB JAR 文件,然后创建显示结果的 JSF 页面。
要想导入 EJB JAR 文件并使它成为现有 EAR 文件的一部分,您需要执行以下的步骤:
在 WebSphere Studio Application Developer(以后简称为 Application Developer)中选择 File => Import。
选择 EJB JAR file,然后单击 Next。
定位到 C:\JSFArticleSeries\Part4\StockSystemEJB.jar。Project 名称应该为 StockSystemEJB。选择现有的 EAR 文件 StockSystemEAR。(您必须显式地选择现有的 EAR;它在缺省情况下为 StockSystemEJBEAR,这可能轻易让人误解。)单击 Finish。
在弹出 Repair Server Configuration 对话框时,请单击 OK。
既然已经将 EJB JAR 文件导入现有的 EAR 之后,现在就需要让它对 WAR 文件可视。可以这样来实现:将 EJB JAR 文件添加到 WAR 文件的清单中,这种方式是处理类路径的标准 J2EE 方式之一。Application Developer 提供了一种完成这一操作的简单方法:在一个步骤中将 EJB JAR 同时添加到构建时和编译时类路径中。
右键单击 Project Navigator 视图中的 PersonalTradeJSF Web 项目,选择 Properties。
选择 Java JAR Dependencies。在该对话框中,选中 StockSystemEJB.jar。确保 Use EJB JAR 也被选中。(对于 Version 5.1.1,Application Developer 支持会生成 EJB Client JAR)。
单击 OK。
在我们的应用程序中,PersonalTradeJSF 会访问 StockFacadeEJB。StockFacadeEJB 与实体 bean 相结合来访问当前股票数据。访问 EJB 时使用 EJB 引用被视为一种最佳实践。虽然 EJB JAR 提供了委托来隐藏 EJB 客户端 API 的细节,但它使用了资源引用。由于委托是在 Web 应用程序的上下文里调用的,所以还需要定义引用。
在 Project Navigator 中,利用 PersonalTradeJSF 底下的链接打开 Web Deployment Descriptor 编辑器。
选择该编辑器底部的 References 选项卡。
选择 References 页面中的 EJB Local 选项卡。
选择 EJB Local References 选项卡下的 Add。
更多精彩
赞助商链接