Web Service学习手册
Christian 2010-11-11
目录
目录
文档说明 (4)
1 Web Service 简介 (4)
1.1什么是Web Service? (4)
1.2Web Service用到的技术 (4)
1.3主流Web Service框架 (5)
1.3.1Axis (5)
1.3.2Xfire (6)
1.3.3CXF (6)
1.3.4主流Web Service的比较 (7)
2开发篇 (8)
2.1Xfire (8)
2.1.1下载Xfire (8)
2.1.2使用Xfire开发Web Service的基本步骤 (9)
2.1.3具体应用 (13)
2.1.4Xfire与spring集成 (42)
文档说明
本文详细介绍了如何用Xfire,CXF,Axis开发Web 服务.Webservice的底层原理并不在本文研究的范围内。所有示例都在sample目录里。这个学习手册的目的是只要仔细阅读本文档以及示例代码,任何对webservice没有基础的程序员都可以用这三个框架编写webservice 接口。但前提是需要动手做每一个
示例。
1 Web Service 简介
1.1 什么是Web Service?
从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web来调用这个应用程序。我们把调用这个Web service 的应用程序叫做客户。
另一种更精确的解释:Web services是建立可互操作的分布式应用程序的新平台。Web service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写Web service,只要我们可以通过Web service标准对这些服务进行查询和访问。Web service平台需要一套协议来实现分布式应用程序的创建。任何平台都有它的数据表示方法和类型系统。要实现互操作性,Web service平台必须提供一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。在传统的分布式系统中,基于界面(interface)的平台提供了一些方法来描述界面、方法和参数(译注:如COM和COBAR中的IDL语言)。同样的,Web service平台也必须提供一种标准来描述Web service,让客户可以得到足够的信息来调用这个Web service。最后,我们还必须有一种方法来对这个Web service进行远程调用。这种方法实际是一种远程过程调用协议(RPC)。
为了达到互操作性,这种RPC协议还必须与平台和编程语言无关。
1.2 Web Service用到的技术
为了实现平台无关,实现独立的访问Web服务,业界制定了一系列技术标准,下面是一些重要的技术:
1.XML
可扩展的标记语言(XML)是Web service平台中表示数据的基本格式。它的内容与
表示的分离十分理想,除了易于建立和易于分析外,XML主要的优点在于它既是平
台无关的,又是厂商无关的。无关性是比技术优越性更重要的:软件厂商是不会选
择一个由竞争对手所发明的技术的。
2.SOAP
Web service建好以后,你或者其他人就会去调用它,简单对象访问协议(SOAP)提
供了标准的RPC方法来调用Web service,SOAP规范定义了SOAP消息的格式,以
及怎样通过HTTP协议来使用SOAP,SOAP也是基于XML,XML是SOAP的数据编码方
式。如何生成webservice客户端
3.WSDL
你会怎样向别人介绍你的Web service有什么功能,以及每个函数调用时的参数
呢?你可能会自己写一套文档,你甚至可能会口头上告诉需要使用你的Web
service的人。这些非正式的方法至少都有一个严重的问题:当程序员坐到电脑前,
想要使用你的Web service的时候,他们的工具(如Visual Studio)无法给他们提
供任何帮助,因为这些工具根本就不了解你的Web service。解决方法是:用机器
能阅读的方式提供一个正式的描述文档。Web service描述语言(WSDL)就是这样一
个基于XML的语言,用于描述Web service及其函数、参数和返回值。因为是基于
XML的,所以WS是机器可阅读的,又是人可阅读的,这将是一个很大的好处。一
些最新的开发工具既能根据你的Web service生成WSDL文档,又能导入WSDL文档,
生成调用相应Web service的代码。
1.3 主流Web Service框架
1.3.1 Axis
Axis(Apache Extensible Interaction System)是一款开源的Web Service 运行引擎,它是SOAP 协议的一个实现,其本身来源于Apache 的另一个项目Apache SOAP。Axis 分为1.x 系列和2 系列,两个系列体系结构和使用上有较大的区别,相对而言,Axis1.x 更加稳定,文档也比较齐全.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。