在开始此练习之前,必须完成

应用程序显示目录中的所有当前职员记录。记录显示在具有可排序的列(包括姓、名、电子邮件和职员标识)的 JTable(employeesTable)中。要为该表获取记录,需要将 employeesTable 绑定至样本 Web Service 数据源返回的数据对象

在此练习中,必须完成下列两个步骤:

  1. 使用提供的 WSDL 文件在项目中生成 Web Service Java 代理
  2. 将 EMPLOYEE 表绑定至 Web Service 返回的行数据对象

数据对象、数据源和绑定程序概述

为了获取本地数据对象以供 employeesTable 使用,将使用可视编辑器来将数据源添加至应用程序。该数据源会连接至样本 Web Service 代理,并且会发现可用于应用程序的服务方法。然后,将选择该数据源中可用的 getLightEmployeeRecord 服务方法。最后,将把应用程序中的 employeesTable 绑定至在行数据对象(lightEmployeeRecordRows)中返回的字段。

通过使用 Java 可视编辑器的内置绑定程序类,可以快捷地创建所有数据源和数据对象。可视编辑器提供了一组类属接口和类,它们是在将可视组件绑定至数据工厂时生成到项目中的。缺省情况下,绑定程序类生成到名为 jve.generated 的包中。可视编辑器将绑定程序类作为类属实现来提供,可以进一步定制并增强这些类以满足应用程序的需要。本教程演示了只对缺省绑定程序类进行基本和简单的操作时所表现出的强大功能和灵活性。

要点:在开始此练习之前,强烈建议先阅读下列帮助主题。这些主题可以帮助您更多地了解 Java 可视编辑器提供的数据对象、数据源和绑定程序所具有的功能和逻辑:

对于本教程,将在应用程序中使用 Web Service 数据源、几种类型的数据对象和几种类型的绑定程序。当将这些对象的实例添加至应用程序时,可视编辑器会将必需的类添加到项目的 jve.generated 包中,在这里您可以扩展、替换或重写数据绑定逻辑。通过在设计视图的自由格式区域中显示应用程序正在使用的数据对象、数据源和绑定程序,Java 可视编辑器可以提供对绑定对象的可视支持。可视编辑器会在可视组件、数据对象和数据源之间绘制一些线,以显示任何选择的对象的当前绑定。

下图是可视组件、绑定程序、数据对象和数据源交互方式的简要概述。在本教程中构建的应用程序说明了对绑定程序的稍微复杂和更具创意的使用。此图没有准确地表示要构建的样本应用程序中的绑定程序、数据对象和数据源。

图 1. 此图说明可视组件、绑定程序、数据对象和数据源之间的样本关系。
此图说明可视组件、绑定程序、数据对象和数据源之间的关系

在图 1 中,每个可视组件都有它自己的绑定程序,该绑定程序将可视组件与数据对象相关联,如果可视组件为按钮,则将可视组件与数据源相关联。文本字段的绑定程序将字段绑定至数据对象的特定属性。此图中的行数据对象和数据对象的数据都来自对数据源中的服务的直接调用。文本字段的数据对象使用表中所选行的键值作为它用来调用 Service2 的自变量,Service2 会返回可能包括有关表中所选行的更多信息的完整记录。同样,此完整记录又用作按钮的操作绑定程序在调用 Service3 时的自变量,Service3 可能是更新在字段中输入的值的方法。有关数据对象、数据绑定程序和数据源的更详细说明,访问先前提供的链接。

使用提供的 WSDL 文件在项目中生成 Web Service Java 代理

为了使用在服务器上运行的 Web Service,Java 应用程序要求 Java 代理或客户机与它交互。通过使用 WSDL 文件,可以使用“Web Service 客户机”向导来将 Java 代理生成到 Java 项目中。MyDirectory 项目包括将用来生成此代理的 EmployeeDirectory.wsdl 文件。在生成 Java 代理之后,可以创建表示 Web Service 的数据源并开始对可视组件进行绑定。

要点:本练习中使用的 WSDL 文件假定您已将 Web Service 部署在 WebSphere Application Server 的本地安装中并且使用了本地主机的缺省端口(http://localhost:9080)。如果以不同方式部署了 EAR 文件,则在继续之前必须相应地编辑该 WSDL 文件。

要在项目中生成 Web Service Java 代理:

  1. 在主菜单上,单击文件 > 新建 > 其它并选择 Web Service > Web Service 客户机向导。如果没有显示 Web Service 类别,则选择显示全部向导
  2. 在“Web Service 客户机”向导上的客户机代理类型字段中,选择 Java 代理,然后单击下一步
  3. 在“选择 Web Service”页面上,单击浏览以找到 WSDL 文件。
  4. 在“资源”浏览器中,展开 MyDirectory 项目并选择 EmployeeDirectory.wsdl。单击确定,然后在“Web Service 客户机”向导上单击下一步

    “Web Service 客户机”向导

  5. 在该向导的“客户机环境配置”页面上,单击编辑来修改客户机端配置,以确保将正确的运行时 JAR 文件或路径添加至 Java 项目。选择下列值,然后单击确定
  6. 在该向导的“客户机环境配置”页面上的客户机类型字段中,选择 Java
  7. 客户机项目字段中,选择 MyDirectory。该 Java 项目是“Web Service 客户机”向导输出 Web Service 的 Java 代理的位置。

    “Web Service 客户机”向导

  8. 单击下一步
  9. 单击完成。“Web Service 客户机”向导会生成 Java 代理并将它添加至项目的新包(directory.service)。

将 employeesTable 绑定至 Web Service 返回的行数据对象:

演示

因为 employeesTable 是在此应用程序中要绑定的第一个可视组件,所以需要创建一个数据源以指向刚才添加至项目的样本 Web Service 代理。当在后面的练习中绑定其它可视组件时,您将重用此数据源。在此步骤中,将添加 Web Service 数据源和 lightEmployeeRecordRows 数据对象。

要绑定 EMPLOYEE 表:

  1. 在 Java Bean 视图或设计视图中,选择 employeesTable。(确保没有选择它的 JScrollPane 父代。)标记为绑定的小型选项卡显示在 employeesTable 的设计区域的顶部。

    图形画布 JTable 上的绑定选项卡

  2. 单击 employeesTable 上的绑定选项卡。或者,可以右键单击 employeesTable 并选择绑定属性
  3. 因为应用程序中没有数据对象,所以需要添加新的数据对象。单击新建数据源数据对象
  4. 源类型字段中,选择 Web Service
  5. 因为尚未将 Web Service 数据源添加至应用程序,所以您现在需要添加它。在数据源字段的旁边,单击 ... 按钮以打开“添加 Web Service 数据源”对话框,该对话框会查找项目中可用的 Web Service 客户机或代理。
  6. 选择 EmployeeDirectory Web Service 并单击完成。新的数据源会添加至 DirectoryApp.java 文件。

    “添加 Web Service 数据源”对话框

  7. 在“新建数据源数据对象”对话框中,在源服务字段中选择 getLightEmployeeRecords() 并接受新数据对象的缺省名称:lightEmployeeRecordRows。此服务方法不需要参数。单击确定。会创建新的数据对象并且会在设计视图的自由格式区域上显示它。

    “新建数据源数据对象”对话框

    提示:因为正在绑定表,所以“新建数据源数据对象”对话框只显示返回行数据对象的服务。在这种情况下,getLightEmployeeRecords() 方法是返回对象数组的唯一可用服务。

  8. 在“表数据绑定”对话框中,选择 lightEmployeeRecordRows 数据对象。
  9. 现在,需要选择想要显示在 employeesTable 上的 lightEmployeeRecordRows 数据对象的属性:

    “表数据绑定”对话框

    1. 单击 双箭头图标,用于将所有属性添加为表列 按钮以将所有对象属性添加至表列列表。
    2. 使用向上和向下箭头按照从上向下的顺序排列这些列:lastName、firstName、email 和 employeeID。
    3. 重命名列标题:电子邮件职员标识

      技巧:在绑定完表之后,可以总是返回至绑定属性,并且可以随时重命名这些列和对它们重新排序。

    4. 单击确定

    现在,通过使用 JRowTableBinder 已将 employeesTable 绑定至 lightEmployeeRecordRows 数据对象。如果在自由格式区域上单击 lightEmployeeRecordRows 数据对象,则可视编辑器会绘制一条从该数据对象至表的线。在这条线上,JRowTableBinder 用表绑定程序 表绑定程序图标 图标表示。会有另一条线指示数据对象使用 webServiceDataSource 作为它的数据源。

    JTable 的绑定程序线视图

检查对项目和应用程序所作的更改。在此练习期间,您已添加 Web Service 数据源、行数据对象和将 employeesTable 绑定至该行数据对象的绑定程序。注意检查新包(jve.generated),它是在项目中创建的以存放 Java 可视编辑器生成的所有绑定程序类。还要注意新包(directory.service),它存放 Web Service 的 Java 代理。

MyDirectory 项目中的包

现在,当运行应用程序时,EMPLOYEE 表会由 Web Service 使用现有职员记录来填充。

现在,可以开始进行下一个练习:

使用条款 | 反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.