web service学习手册(xfire)-christian

上传人:xzh****18 文档编号:42075282 上传时间:2018-05-31 格式:PDF 页数:46 大小:1.31MB
返回 下载 相关 举报
web service学习手册(xfire)-christian_第1页
第1页 / 共46页
web service学习手册(xfire)-christian_第2页
第2页 / 共46页
web service学习手册(xfire)-christian_第3页
第3页 / 共46页
web service学习手册(xfire)-christian_第4页
第4页 / 共46页
web service学习手册(xfire)-christian_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《web service学习手册(xfire)-christian》由会员分享,可在线阅读,更多相关《web service学习手册(xfire)-christian(46页珍藏版)》请在金锄头文库上搜索。

1、 Web Service 学习手册学习手册 Christian 2010-11-11第 2 页 共 46 页 第 3 页 共 46 页 目目 录录 目录目录 文档说明. 4 1 Web Service 简介 . 4 1.1 什么是 Web Service? . 4 1.2 Web Service 用到的技术 . 4 1.3 主流 Web Service 框架 . 5 1.3.1 Axis . 5 1.3.2 Xfire . 6 1.3.3 CXF . 6 1.3.4 主流 Web Service 的比较 . 7 2 开发篇. 8 2.1 Xfire . 8 2.1.1 下载 Xfire . 8

2、 2.1.2 使用 Xfire 开发 Web Service 的基本步骤 . 9 2.1.3 具体应用 . 13 2.1.4 Xfire 与 spring 集成 . 42 第 4 页 共 46 页 文档说明文档说明 本文详细介绍了如何用 Xfire,CXF,Axis 开发 Web 服务.Webservice 的底层原理并不在本文研究的范围内。所有示例都在 sample 目录里。这个学习手册的目的是只要仔细阅读本文档以及示例代码,任何对 webservice 没有基础的程序员都可以用这三个框架编写 webservice接口。但前提是需要动手做每一个示例。 1 Web Service 简介简介 1

3、.1 什么是什么是 Web Service? 从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过 Web 进行调用的 API。这就是说,你能够用编程的方法通过 Web 来调用这个应用程序。我们把调用这个 Web service 的应用程序叫做客户。 另一种更精确的解释:Web services 是建立可互操作的分布式应用程序的新平台。Web service 平台是一套标准,它定义了应用程序如何在 Web 上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写 Web service,只要我们可以通过 Web service 标准对这些服务进行查询和访问。

4、 Web service 平台需要一套协议来实现分布式应用程序的创建。任何平台都有它的数据表示方法和类型系统。要实现互操作性,Web service 平台必须提供一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。在传统的分布式系统中, 基于界面(interface)的平台提供了一些方法来描述界面、 方法和参数 (译注:如 COM 和 COBAR 中的 IDL 语言) 。同样的,Web service 平台也必须提供一种标准来描述 Web service,让客户可以得到足够的信息来调用这个 Web service。最后,我们还必须有一种方法来对这个 Web service

5、 进行远程调用。这种方法实际是一种远程过程调用协议(RPC)。为了达到互操作性,这种 RPC 协议还必须与平台和编程语言无关。 1.2 Web Service 用到的技术用到的技术 为了实现平台无关,实现独立的访问 Web 服务, 业界制定了一系列技术标准,下面是一些重要的技术: 第 5 页 共 46 页 1. XML 可扩展的标记语言(XML)是 Web service 平台中表示数据的基本格式。它的内容与表示的分离十分理想,除了易于建立和易于分析外,XML 主要的优点在于它既是平台无关的,又是厂商无关的。无关性是比技术优越性更重要的:软件厂商是不会选择一个由竞争对手所发明的技术的。 2.

6、SOAP Web service 建好以后,你或者其他人就会去调用它,简单对象访问协议(SOAP)提供了标准的 RPC 方法来调用 Web service,SOAP 规范定义了 SOAP 消息的格式,以及怎样通过 HTTP 协议来使用 SOAP, SOAP 也是基于 XML, XML 是 SOAP 的数据编码方式。 3. WSDL 你会怎样向别人介绍你的 Web service 有什么功能,以及每个函数调用时的参数呢?你可能会自己写一套文档,你甚至可能会口头上告诉需要使用你的 Web service 的人。 这些非正式的方法至少都有一个严重的问题: 当程序员坐到电脑前,想要使用你的 Web s

7、ervice 的时候,他们的工具(如 Visual Studio)无法给他们提供任何帮助,因为这些工具根本就不了解你的 Web service。解决方法是:用机器能阅读的方式提供一个正式的描述文档。Web service 描述语言(WSDL)就是这样一个基于 XML 的语言,用于描述 Web service 及其函数、参数和返回值。因为是基于XML 的,所以 WS 是机器可阅读的,又是人可阅读的,这将是一个很大的好处。一些最新的开发工具既能根据你的 Web service 生成 WSDL 文档, 又能导入 WSDL 文档,生成调用相应 Web service 的代码。 1.3 主流主流 Web

8、 Service 框架框架 1.3.1 Axis Axis(Apache Extensible Interaction System)是一款开源的Web Service 运行引擎,它 是SOAP 协议的一个实现,其本身来源于Apache 的另一个项目Apache SOAP。Axis 分为1.x 系列和2 系列,两个系列体系结构和使用上有较大的区别,相对而言,Axis1.x 更加稳定, 文档也比较齐全. 第 6 页 共 46 页 1.3.2 Xfire XFire 是下一代的java SOAP 框架。XFire 提供了非常方便的API,使用这些API 可以 开发面向服务(SOA)的程序。它支持各

9、种标准,性能优良(基于低内存的STAX 模型) 。 支持多个重要的Web Service 标准, 包括SOAP 、WSDL 、WS-I Basic Profile WSAddressing、WS-Security 等。 高性能的SOAP 栈。 可选的绑定(binding)方式,如POJO、XMLBeansJAXB1.1、JAXB2.0、Castor 和JiBX 等。 支持JSR181 API。 多种传输方式,如HTTP、JMS、XMPP、InJVM 等。 灵活的接口。 支持多个容器,如Spring、Pico、Plexus、Loom。 支持JBI,参看servicemix 项目(http:/se

10、rvicemix.org)。 客户端和服务器代码生成。 1.3.3 CXF 1.3.3.1 CXF 的由来的由来 Apache CXF 项目是由Objectweb Celtix 和Codehaus XFire 合并成立的。Objectweb Celtix 是由IONA 公司赞助、于2005 年成立的开源Java ESB 产品,XFire 则是业界知名的SOAP 堆栈。合并后的Apache CXF 融合该两个开源项目的功能精华,提供了实现SOA 所需要的 核心ESB 功能框架,包括SOA 服务创建,服务路由,及一系列企业级QoS 功能。此次发 布代表了Apache CXF 开发人员及社区用户一年

11、的努力结果,并标志Apache CXF 软件的进 一步成熟,成为实现SOA 的优秀技术解决方案之一。2.1 版本的CXF,已经是一个正式的 Apache 顶级项目。 1.3.3.2 CXF 的功能的功能 CXF 提供了一套创建SOA 服务的基础设施框架,用户由此可以按照自己喜欢的编程模 式,利用Apache CXF 提供的简单易用工具(包括Maven 插件) ,创建适合SOA 环境的任何 WEB 服务,包括SOAP/HTTP 服务及REST/HTTP 服务。Apache CXF 可扩展的插拔式架构 不但支持XML 消息格式和HTTP 通信协议,而且还支持基于其他通信协议如IIOP 和非XML 消息格式如CORBA CDL 或JSON。 主要功能列表如下: 支持JAX-WS 2.1,部署JAX-WS 已经更新至JAX-WS 2.1 规范。 JAX-RS 0.6 REST 的初期部

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 理论文章

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号