IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope: Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    
跳转到主要内容

developerWorks 中国  >  WebSphere  >

使用 WebSphere Studio Application Developer 进行 Web 服务编程: 第 1 部分:Web 服务发现与评估

developerWorks
文档选项

未显示需要 JavaScript 的文档选项


级别: 初级

Paul Pacholski (pacholsk@ca.ibm.com), WebSphere 工具全球技术销售顾问

2002 年 4 月 20 日

本文描述了如何使用 IBM WebSphere Studio Application Developer 来发现和评估 Web 服务,以及 Application Developer Web 服务工具如何使 Web 服务的发现和评估变得快捷和简单。

©Copyright International Business Machines Corporation 2002. All rights reserved.

简介

目前,我们已经可以从众多 UDDI 企业注册中心和其它与 UDDI 相容的资源库上获得许多有用的 Web 服务。但是,Web 服务发现和评估的任务可能很复杂,并且可能需要经常编写代码。这妨碍了许多程序员在 Web 应用程序中使用 Web 服务。本文描述了如何使用 IBM® WebSphere® Studio Application Developer 来发现和评估 Web 服务,以及Application Developer Web 服务工具如何使 Web 服务的发现和评估变得快捷和简单。

使用 Application Developer 的 Web 服务发现和评估需要四个简单的步骤(如果不算初始设置的话,实际上是三步):

  1. 设置 WebSphere Studio Application Developer
  2. 连接至与 UDDI 相容的注册中心
  3. 发现 Web 服务并将其导入至 Application Developer 项目
  4. 测试 Web 服务

本文中使用的唯一产品是 IBM WebSphere Studio Application Developer, 版本 4.0.3 Windows® 版。

理解下面描述的过程不需要熟悉 Application Developer 的基本操作。





回页首


步骤 1. 设置 WebSphere Studio Application Developer

  1. 安装 WebSphere Studio Application Developer。
  2. 启动 WebSphere Studio Application Developer。
  3. 创建 Web 和 EAR(企业压缩文档(Enterprise Archive))项目。

    我们现在将创建 Web 项目,用它来下载 WSDL 文件以及执行 Web 服务的单元测试和评估。我们还将创建 EAR 项目,它是将我们的单元测试 Web 应用程序(Test Client)部署到 WebSphere v4.0 Test Environment 所必需的。

    1. 单击位于垂直 Perspective 工具栏上的 Open Perspective Open Perspective 图标来打开 Web Perspective。
    2. 要创建 Web 和 EAR 项目,从主工具栏,单击 Create a Web project Create a Web Project 图标
    3. 在 Define the Web project 页面上,对于 Project name,输入 WebServicesEvaluation, 对于 Enterprise Application project name,输入 WebServicesEvaluationEAR。参阅下面的图 1。

图 1. 定义 Web 项目
定义 Web 项目

  1. 单击 Finish以创建 Web 和 EAR 项目。




回页首


步骤 2. 连接至与 UDDI 相容的注册中心

Application Developer 中的 UDDI Explorer 工具使您能够在与 UDDI 相容的注册中心中发现或注册 Web 服务。通过使用 UDDI Explorer 可以访问任何与 UDDI V1 和 V2 相容的资源库。本文中,我们将访问 XMethods Web 服务资源库。XMthods 收集了大量来自许多供应商的 Web 服务。与 XMethods 的 UDDI V1 和 V2 相容的接口只允许查询和检索操作。

  1. 启动 IBM UDDI Explorer。

    1. 选择 WebServicesEvaluationWeb 项目。

      在接下来的步骤中,将(您将发现的 Web 服务的)Interface WSDL 文件导入到 WebServicesEvaluation Web 项目的根目录。

    2. 从主菜单上选择 File => Import
    3. 在 Select 页面上,选择 UDDI然后单击 Next
    4. 在 UDDI Import 页面上,单击 Finish。这将启动 IBM UDDI Explorer 工具。

      几秒钟之后,您应该看到一个运行 UDDI Explorer Web 应用程序的 Web 浏览器窗口。参阅下面的图 2。

    图 2. IBM UDDI Explorer
    IBM UDDI Explorer

  2. 连接至 XMethods UDDI 企业注册中心。

    1. 在 UDDI Navigator 框架中,单击 UDDI Main链接。
    2. 在 Actions 框架中,对于 registry name 输入 XMethods,对于 Inquiry URL 输入 http://uddi.xmethods.net/inquire
    3. 单击 Go。XMethods 项将被添加到 UDDI Main 树下。
    4. 在 UDDI Navigator 框架中,单击 XMethods链接。参阅下面的图 3。

图 3. XMethods UDDI 企业注册中心
XMethods UDDI 企业注册中心

  1. 要保存该链接以供将来之用,请在 Actions 框架工具栏中,单击 Add to favorites Add to favorites 图标




回页首


步骤 3. 发现 Web 服务并将其导入到 Application Developer 项目

在这一步中,您将根据 Web 服务的英语描述搜索它。

在我们深入探讨发现 Web 服务的细节之前,让我们先研究一下用 UDDI Explorer 发现 Web 服务的三种不同方法。第一种方法是 Find Business Entities(如下图 4 所示),建议您在知道企业实体并想知道该企业实体提供什么 Web 服务时使用。第二种是 Find Business Services,它让您根据 Web 服务的英语描述查找 Web 服务(及其接口 WSDL 文件)。 它在所有已注册的企业实体中搜索 Web 服务的描述。最后是 Find Business Interface,它等同于 Find Business Services,只是它查找 Service(也称为 Binding) WSDL 文件,而不是 Interface WSDL file。

  1. 发现 Web 服务。

    假定我们对提供按揭还款计算的 Web 服务感兴趣,并且我们不知道或者不关心 Web 服务供应商是谁。使用 IBM UDDI Explorer,基于 Web 服务的描述查找 Web 服务的任务很简单。让我们使用 Find Business Services 功能。

    1. 在 UDDI Navigator 框架中,单击 Find Business Services链接。

图 4. 查找企业服务
查找实体服务

    1. 在 Actions 框架中,对于 service Name,输入 %mortgage然后单击 Go (% 是 UDDI 搜索的通配符)。等待片刻,让 UDDI Explorer 搜索 XMethods Web 服务资源库并在 query results 文件夹中返回以下结果。

图 5. 查询结果
查询结果

    1. 找到一个匹配项:Monthly Mortgage Payment Web 服务。

  1. 将 Web 服务导入到 Application Developer 项目。

    1. 在 UDDI Navigator 框架中,单击 query results 文件夹下的 Monthly Mortgage Payment链接。
    2. 在 Actions 框架中:

      1. 确保 Web 项目是 WebServicesEvaluation。
      2. 将 WSDL 文件从 temp.wsdl 改为 MortgagePayment.wsdl
      3. 单击 Go以将其导入 Application Developer。

    图 6. WSDL 导入详细信息
    WSDL 导入详细信息





回页首


步骤 4. 测试 Web 服务

您刚把服务 WSDL 文件( MortgagePayment.wsdl )下载到了 WebServicesEvaluation 项目的根目录。参阅下面的图 7。

图 7. 导入的 WSDL 文件
导入的 WSDL 文件

在下面两个容易的步骤中,您将生成 Test Client 并评估 Monthly Mortgage Payment Web 服务来看它是否符合您的需求。

1. 创建 Web 服务客户机

  1. 从 Navigator 窗格选择 MortgagePayment.wsdl 文件,单击鼠标右键然后选择 New => Other
  2. 在 Select 窗口中,从左边窗格选择 Web services并从右边窗格选择 Web service client然后单击 Next
  3. 在 Web service Client 窗口中,选择:

    1. Generate a sample复选框。
    2. Launch the sample复选框。

图 8. Web service Client 向导设置
Web Service Client 向导设置

  1. 如果每次导入 WSDL 文件时您指定了不同的文件,那您就无需选中 Overwrite files without warning

  2. 单击 Finish。等待 Web 服务客户机向导退出;这可能要花一点时间。

现在让我们来研究生成了什么代码。

Java™ Proxy 类:

图 9. Java Proxy
Java Proxy

它被用在 Test Client Web 应用程序中来同这个 Web 服务交互。以后您可以在您自己的代码中使用 Java Proxy 类来调用这个 Web 服务。

Test Client Web 应用程序:

图 10. Test Client
Test Client

您将在下一步中使用这个生成的 Test Client Web 应用程序来测试 Web 服务。

带有 WebSphere 服务器实例与配置的服务器项目:

图 11. WebSphere 服务器实例与配置
WebSphere 服务器实例与配置

这个服务器实例与配置用来运行 Test Client Web 应用程序。

使用步骤 3.2.b 中指定的 WSDL 文件名称对 Java Proxy(MortgagePayment)及 Test Client Web 应用程序的子目录进行命名。这使得将同一个 Web 项目用于下载和测试多个 Web 服务成为可能!

2. 测试并评估 Web 服务

Application Developer 已经切换到了 Server Perspective,并且 Web 服务客户机向导生成的 Test Client Web 应用程序也已为您启动。您现在准备好测试和评估 Web 服务。

图 12. Web 服务 Test Client
Web 服务 Test Client

  1. 在 Methods 窗格里,单击 CalculatePayment链接。该链接代表由该 Web 服务提供的操作。
  2. 现在 Inputs 窗格显示 CalculatePayment 操作的请求消息部分。如图 13 中所示,输入所需的输入数据。

图 13. Web 服务 Test Client — Input 窗格
Web 服务 Test Client — Input 窗格

  1. 单击 Invoke以调用这个 Web 服务的 CalculatePayment 操作。您现在应该看到如下图 14 显示的 Results 窗格中的结果。

图 14. Web 服务 Test Client — Result 窗格
Web 服务 Test Client — Result 窗格





回页首


结束语

IBM WebSphere Studio Application Developer 使得发现、评估和测试 Web 服务非常容易。IBM UDDI Explorer 工具使您能够发现在任何 UDDI V1 和 V2 相容的 Web 服务资源库中注册的 Web 服务并将其导入。强大的 Web 服务客户机向导执行评估 Web 服务所需的所有编程任务,包括生成可用于对 Web 服务进行单元测试的 Test Client web 应用程序。由于完成整个过程需要几分钟而不是几小时,因此当需要评估大量 Web 服务时,Application Developer 是一个理想的工具。

后续文章(使用 WebSphere Studio Application Developer 进行 Web 服务编程 — 第 2 部分)将很快发布。它将讨论测试 Web 服务时可能碰到的一些同 WSDL 有关的常见问题,并介绍克服这些问题的一些技术。



关于作者

照片:Paul Pacholski

Paul Pacholski是支持 WebSphere 开发工具尤其是 Web 服务的技术销售顾问。可以通过 pacholsk@ca.ibm.com和 Paul 联系。




对本文的评价










回页首


IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    关于 IBM 隐私条约 联系 IBM 使用条款