级别: 中级 Manas Mandal (mmandal@gmail.com), 架构师, Consultant
Hernan Silberman (hernan.silberman@gmail.com), 自由作家, Consultant
2007 年 8 月 14 日 Web 服务的目标是,支持在不同的软件和硬件系统间进行通信。这些系统通常在硬件和软件配置中都存在差异。通过标准协议(如在构建 Web 服务中采用的标准)的定义,已经克服了这些差异。即便使用这些标准协议,有时候仍然会出现不兼容问题,从而导致互操作性问题。本教程是了解“ Web 服务规范”系列的第 6 部分,将说明 Web 服务互操作性问题的本质和成因。本教程还将介绍 WS-I Basic Profile;此概要是 Web 服务为了实现最优的互操作性而应该遵循的一组指导方针。
在本教程中
在本教程中,我们将了解 Web 服务互操作性(Web Services Interoperability,WS-Interoperability)。本教程的目标读者是构建 Web 服务,并希望确保其服务的设计能够满足最大潜在用户的使用需求的程序员。通过了解影响 Web 服务的实际互操作性问题及可以应用来避免这些问题的最佳实践,就可以区分方便用户使用的 Web 服务和充满问题的 Web 服务。 本系列教程以假想的报社 Daily Moon 为例;为了提高在竞争激烈的环境中的工作效率,其员工将使用各种 Web 服务来创建工作流系统,我们将在此过程中讲述各个 Web 服务基本概念。
目标 - 了解创建互操作文档的语法,以及如何创建自己的文档、如何使用他人的文档和现有声明。
- 了解引起互操作问题的原因以及如何避免。
- 了解 WS-I 基本概要以及如何使用。
- 了解现有的测试互操作性问题的工具。
预备知识
为了跟上本教程的学习,您应该具有简单对象访问协议(Simple Object Access Protocol,SOAP)的基本知识。您可以阅读本系列的第 1 部分来获取(另外,您也需要 XML 的基础知识)。SOAP 是语言无关的。不过本教程的示例使用了 Java™ 语言和 Apache Axis2,其概念是适用于任何编程语言和环境的。
系统需求
本教程中使用的代码并不特定于任何编程语言或环境。所提供的示例是本系列教程中全程使用的相同示例。为了按照教程中的说明对示例进行操作,您需要安装以下软件:
Java 2 Standard Edition 的 1.4.2 或更高版本——所有这些工具都是基于 Java 的,本教程中将要构建的服务和客户机也是如此。
Apache Axis2 V1.0——Axis2 是一个功能齐全的 SOAP 工具包,提供几个 Web 服务 API 的实现,包括 SOAP 和 WSDL。Axis2 之类的工具包对于 Web 服务开发的价值是无法估量的。目前还有用于其他编程语言和环境的类似工具包。Apache 的 Axis 项目的历史悠久,源自名为 SOAP4J 的 IBM 工作项目。
Apache Geronimo 或其他应用服务器——本系列教程全程使用 Apache Geronimo J2EE 服务器(该服务器是 IBM WebSphere® Community Edition Server 的基础)。也可以使用其他应用服务器,但 Geronimo 非常简单,而且属于轻量级的免费工具,因此是快速入门非常好的选择。 Web 浏览器和文本编辑器
学习时间
2 小时
格式 html
IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。 |