练习 1.3:创建 Web Service

在开始之前,必须完成练习 1.2:导入并验证 WSDL 文件

启动服务器

在尝试创建 Web service 之前,强烈建议启动 Web service 将运行于的 WebSphere Application Server。虽然可以在 Web service 向导中启动该服务器,但启动可能需要好几分钟(视机器的速度而定),所以在开始之前启动服务器将提高完成向导的速度,同时减少向导由于服务器启动时间长而产生错误的机会。

要启动服务器,右键单击“服务器”视图中的服务器并选择启动

如果未在工作空间中打开“服务器”视图,则从窗口菜单通过选择显示视图 > 服务器来打开它。

从 WSDL 文件创建 Web Service

Web Service 向导帮助您创建新的 Web Service、配置它以进行部署并将 Web Service 部署到服务器。部署了 Web Service 之后,向导将帮助您生成客户机代理和样本应用程序来测试该 Web Service。完成了测试之后,可以使用“导出”向导将 Web service 发布到“UDDI 企业注册中心”。

  1. 单击窗口 > 打开透视图 > 资源以切换到“资源”透视图。
  2. 在“导航器”视图中,单击 Web 项目中的 ConvertTemperature.wsdl 文档。
  3. 单击文件 > 新建 > 其它。选择 Web Service 以显示各种 Web Service 向导。选择 Web Service 向导。单击下一步
  4. 在 Web Service 面板中,选择框架 EJB Web Service 作为 Web Service 类型。另外,选择下面各项: 对于本示例,应选择下列选项:
    Web Service 向导的屏幕捕捉
  5. 在“选择对象”页上,应填写了 WSDL 文件。
  6. 在“服务部署配置”页中,可以指定部署设置。在服务器端和客户机端配置中,都将 IBM WebSphere 运行时环境设置为缺省运行时环境。
    1. 在“服务器端部署选择”选择中,在服务器项目字段中输入 TempEJB,在服务器 EAR 字段中输入 TempEJBEAR
    2. 在“客户机端环境选择”选择中,使客户机类型保留为 Web 项目,对于客户机项目字段,输入 TempEJBClient,对于客户机项目 EAR,输入 TempEJBClientEAR。将服务和客户机项目生成到不同 EAR 中将减少在运行时遇到错误的可能性。
    3. 单击下一步

    如步骤中所述完成了各字段的“服务部署配置”页的屏幕捕捉。
  7. 在 Web service 框架 EJB 配置页上,输入 WebProject 作为路由器项目。
  8. 在“Web Service 测试”页中,在开发客户机或代理之前可以选择测试工具来测试 Web Service。选择“Web Service 资源管理器”作为 Web Service 的测试工具并单击启动。此步骤可能需要几秒钟,等待 WebSphere Application Server 启动。
  9. Web 浏览器中将显示“Web Service 资源管理器”。从操作列表中选择 fahrenheitToCelsiuscelsiusToFahrenheit。在值字段中输入一个数字并单击执行。将提供这些操作中的每个操作的基本实现并将返回缺省值 -3。如果成功完成了这两个操作,则关闭浏览器窗口并单击 Web Service 向导中的下一步
  10. 在“Web Service 代理”页中,确保选择了生成代理。保持对“安全性配置”选择 No Security 以保持 WS-I 一致性。单击下一步
  11. 在“Web Service 客户机测试”页中,确保选择了测试生成的代理在服务器上运行测试。在“方法”部分中,确保选择了所有方法,或者单击全部选中以选择所有方法。如果想要将 Web service 发布到 UDDI 注册中心,则单击下一步以配置“Web service 发布”选项。但是本教程中将不讨论此步骤。否则,单击完成
  12. Web 浏览器中将启动样本应用程序。可以使用此应用程序来通过下列操作测试 Web Service:在“方法”框架中选择一种方法、在“值”框架中输入一个输入值并单击调用以在“结果”框架中查看结果。不要关闭 TestClient.jsp 浏览器窗口 - 将在本教程的后面部分使用它来针对 WS-I 一致性测试 Web Service 通信量。

现在,您可以开始进行练习 1.4:实现温度转换方法了。

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