WebSphere 如何支持 Web 服务的简要概述

WebSphere 中的 Web 服务是什么?

有几种 WebSphere 产品提供了 Web 服务功能。其中最主要的是 WebSphere Application Server(以下称为 Application Server)以及 WebSphere Application Server Network Deployment 的 Web 服务网关组件。其他的一些产品包括:用于 z/OS 的 CICS Transaction Server V3.1,它可以提供和使用符合 WS-I 的 Web 服务;WebSphere Message Broker,它提供了对 SOAP 消息的支持;WebSphere Business Integration Server,它通过各种适配器提供了 Web 服务的连接。本文重点关注 WebSphere Application Server 提供的 Web 服务功能。
部署到 WebSphere Application Server 的应用程序可以利用其中的 Web 服务内置支持,以基于行业标准的方式向远程使用者公开其服务。这些应用程序还可以发现和调用由其他应用程序通过不同技术实现的各种服务。

通过 WebSphere 使用 Web 服务有些什么要求?

在 WebSphere 上运行 Web 服务的基本要求与运行任何其他应用程序的要求相同。然而,Web 服务技术发展得很快,从 WebSphere 提供该技术开始,在过去 4 年中它发生了很大的变化。另外,因为 Web 服务是一种分布式技术,所以它们需要有使用者和提供者。Web 服务互操作性 (WS-I) 组织将协议版本的一些组合定义为概要,以便帮助 Web 服务使用者和提供者确定他们之间的兼容性。作为使用者或提供者时,不同版本的 WebSphere 对 Web 服务的支持级别不同。大体说来,可以将对 Web 服务的支持分为三组:WebSphere 5.0.2 以前、WebSphere 5.0.2 到 WebSphere 5.1 和 WebSphere 6。
WebSphere 5.0.2 以前
概述:这个版本的 Web 服务是在 Application Server V4 中引入的,并在 Application Server V5 中正式提供。尽管 WebSphere 现在附带的是 Apache SOAP 实现,但是如果需要实现这些 WebSphere 版本的 Web 服务,您应该考虑使用 Apache Axis 实现。
Web 服务栈:Apache SOAP
互操作性:因为 WebSphere 中这个版本的 Web 服务栈不符合任何 WS-I 概要,所以这种 Web 服务栈的使用应该仅限于与其他的 WebSphere V5.0.2 以前的实现进行通信的情况,或者仅在对不同实现进行了全面的测试之后使用。可以限制与其他供应商栈之间的互操作性。
工具:要为这个版本的 WebSphere 构建 Web 服务使用者和提供者,您需要使用 WebSphere Studio Application Developer V5 或更高版本。
WebSphere 5.0.2 到 WebSphere 5.1
概述:这些 WebSphere 版本获益于第 2 代 IBM Web 服务栈。
Web 服务栈:IBM JAX-RPC 1.0 栈
互操作性:因为 WebSphere 中这个版本的 Web 服务栈符合 WS-I Basic Profile V1,所以可以实现与其他供应商的 Web 服务实现之间的基本互操作性。可以实现受限的 Web 服务安全互操作性。
工具:要为这个版本的 WebSphere 构建 Web 服务使用者和提供者,需要使用 WebSphere Studio Application Developer V5.12 或更高版本。
WebSphere 6
概述:WebSphere V6 中的 Web 服务支持是第 3 代的 IBM Web 服务栈,并且支持该领域中许多主流的最新标准。
Web 服务栈:IBM JAX-RPC 1.1 栈
互操作性:因为 WebSphere 中这个版本的 Web 服务栈符合 WS-I Basic Profile Version 1.1、带 UsernameToken 和 X509 令牌支持的 WS-Security、WS-AtomicTransaction 和 WS-Addressing,所以可以实现与其他供应商的 Web 服务实现之间合理的互操作性。可以实现 Web 服务安全互操作性。
工具:要为这个版本的 WebSphere 构建 Web 服务使用者和提供者,需要使用 Rational Application Developer Version 6 或更高版本。
如何构建部署到 WebSphere 的 Web 服务使用者和提供者应用程序?
可以使用 WebSphere 本身附带的命令行工具 (WSDL2Java) 或者您所选择的其他工具来构建部署到 WebSphere 的 Web 服务客户端应用程序,但是最有效的构建部署到 WebSphere 的应用程序代码的方法是,使用 Rational Software Development Platform 中提供的合适工具。Rational 软件开发产品建立在 Eclipse 3.0 的基础之上,并且为符合 J2EE 的企业应用系统的创建和维护提供了一个全面的应用程序开发环境。这个开发环境中包括了许多 Eclipse 中没有的特性。
下面是它所提供的一些功能:
创建服务提供者
根据现有的 JavaTM Bean、企业 Bean、DADX 文件和 URL 自底向上,并根据 WSDL 自顶向下,使用 Rational Application Developer 工具创建、部署、测试和发布 Web 服务。各种向导可以支持自动生成附加构件,如访问 Web 服务和测试客户端的 JavaBean 代理。
Rational 工具还包括 WSDL 编辑器,通过利用最佳实践(首先定义 WSDL 中的类型和接口,然后从 WSDL 生成相应的 Java 构件),它可以简化 Web 服务的开发工作。
创建服务使用者
使用 Web 服务客户端向导或命令行工具为任何 Web 服务创建客户端。创建 Web 服务客户端时只需要 WSDL 文件。
保证客户端的安全
Web 服务向导和部署描述符编辑器可以帮助您为 WebSphere Application Server 环境配置 Web 服务安全 (WS-Security)。
运行 Web 服务
在各种 WebSphere Application Server 版本、Tomcat 和其他测试环境中运行 Web 服务提供者和使用者组件。Application Developer 中集成了 WebSphere 测试环境的部署和管理。
测试 Web 服务
对本地或远程运行的 Web 服务进行测试。对于本地测试,您可以使用 WebSphere 测试环境。WebSphere 测试环境中包含了完整的 WebSphere Application Server 运行时环境。Rational Application Developer 提供了用于测试 Web 服务的各种功能。
发现 Web 服务
浏览统一描述、发现和集成 (UDDI) 注册中心或 Web 服务检查语言 (WSIL) 站点,以查找用于集成的 Web 服务。Web 服务浏览器提供了发现 Web 服务所需的各种功能。
发布 Web 服务
使用 Web 服务浏览器将 Web 服务发布到 UDDI V2 或 V3 业务注册中心。
构建框架
从 WSDL 文件生成 JavaBean 和 EJB 框架。这在项目的开发和测试阶段非常有用。例如,如果定义了服务 (WSDL),但没有在服务提供者站点中运行,并且需要对客户端进行测试,您可以创建一个测试服务提供者来模拟提供者。
验证 Web 服务
使用 WSDL 和 DADX 验证器来检查这些文件类型中的结构和语法问题。在检查服务提供者的服务 WSDL 文件的有效性时,此功能非常有用。
检查遵从性
可以为 Web 服务开发环境定义不同的 WS-I 概要遵从性测试和级别。Rational Application Developer 可以对 Simple SOAP Basic 1.0 和 Attachment Profile 1.0 的遵从性进行检查。
当创建和更改 Web 服务时,WS-I 遵从性测试程序将根据配置、忽略、建议或必需的概要遵从性,对该服务进行分析。可以在 Web 服务首选项中对其进行定义。
使用 WSDL 文件
Rational Application Developer 提供了各种向导和功能,以帮助您使用 WSDL 文件:
使用图形编辑器从模板创建 WSDL 文件,并添加 WSDL 元素(如 service、port、port types、messages)。
创建 WSDL 文档,这将为该 WSDL 文件创建相应的 HTML 文档,类似于 JavaDoc 文档。
对 WSDL 文件进行 WS-I 遵从性验证。
导航 Web 服务
现在,Rational Application Developer 将 Project Explorer 中的 Web 服务组合成一个 Web 服务组,这使得可以更方便地查找和使用 Web 服务。
下表介绍了 Rational Application Developer V6 中支持的与 Web 服务相关的技术和规范。
技术或规范 版本或支持级别

HTTP/HTTPS  1.01.1
JMS 1.1
SOAP    1.1
SOAP Attachment 1.0
UDDI    2.03.0
WSDL    1.1
WSIL    1.0
WS-Security OASIS Standard 1.0
WS-I Basic Profile  1.1.2
WS-I Simple SOAP Binding Profile    1.0.3
WS-I Attachments Profile    1.0
JAX-RPC 1.0 for J2EE 1.3
1.1 for J2EE 1.4
Web Services for J2EE   WSEE 1.0 (JSR 109) for J2EE 1.3
WSEE 1.1 (JSR 921) for J2EE 1.4

Rational Application Developer 支持三种 Web 服务提供者运行时环境:
WebSphere 运行时环境
这是产品中推荐使用的运行时环境。只有 WebSphere 运行时环境得到了 IBM 的完全支持。它包括用于复杂对象的专用序列化器和反序列化器、对企业 Web 服务 (EJB) 的 JSR 109 支持和对 SOAP 的 JMS 支持。
IBM SOAP 运行时环境
在 WebSphere Studio Application Developer(V5 和更早版本)的发布版中,这是唯一支持的运行时环境。它应该仅用于向后兼容性。它支持 Apache SOAP 2.3。现在,使用 SQL 语句(DADX 文件)的 DB2 Web 服务仍然需要这个 SOAP 运行时。
Apache Axis 1.0 运行时环境
这是 Apache SOAP 实现的第 3 个版本。Apache Axis 从 Apache SOAP 实现(最初作为 IBM SOAP4J)发展而来。Apache Axis 运行时不是推荐的 WebSphere 产品环境,但可以用于 Apache Tomcat 服务器。

你可能感兴趣的:(java)