Web Services概述1_第1页
Web Services概述1_第2页
Web Services概述1_第3页
Web Services概述1_第4页
Web Services概述1_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、电子商务高级编程电子商务高级编程柳来星柳来星电子商务教研室电子商务教研室课程介绍课程介绍总学时:总学时:48v课堂教学学时:课堂教学学时:28v实验教学学时:实验教学学时:20最后学生分数评定:最后学生分数评定:v作业和考勤:作业和考勤:10v实验:实验:20v考试成绩:考试成绩:70教学目的和要求教学目的和要求目的目的v通过本课程的学习,使学生能够掌握通过本课程的学习,使学生能够掌握WebWeb服服务所需的核心技术。为有效的电子商务应用务所需的核心技术。为有效的电子商务应用的实施打下坚实的基础的实施打下坚实的基础 要求要求v学习到如下技术学习到如下技术XMLSOAPWSDLUDDIv能够进行

2、能够进行Web服务的开发服务的开发教材及其参考书教材及其参考书Web服务架构与开放互操作技术,柴晓路,服务架构与开放互操作技术,柴晓路,清华大学出版社清华大学出版社Web Services原理与研发实践原理与研发实践 ,顾宁,顾宁 刘家茂刘家茂 柴晓路等柴晓路等 ,机械工业出版社机械工业出版社Web服务实用技术教程,服务实用技术教程,H.M.Deitel美美著,励志等译,机械工业出版社著,励志等译,机械工业出版社SOAP Web服务开发,服务开发,James Snell等著,等著,胡军译,中国电力出版社胡军译,中国电力出版社Java Web服务,服务,David A著,毛世杰,著,毛世杰,刘绍

3、华译,中国电力出版社刘绍华译,中国电力出版社Web服务安全技术与原理,服务安全技术与原理,Mark ONeil等著,冉晓旻等译,清华大学出版社等著,冉晓旻等译,清华大学出版社课程章节课程章节第一章第一章 Web服务概述服务概述第二章第二章 XML第三章第三章 SOAP第四章第四章 WSDL第五章第五章 UDDI第六章第六章 Web服务开发环境服务开发环境第七章第七章 Web服务安全服务安全第一章第一章 Web服务概述服务概述大纲大纲1.1 Web服务概念服务概念1.2 Web服务体系结构服务体系结构1.3 Web服务协议栈服务协议栈1.4 Web服务局限性服务局限性1.5 Web服务标准的发展

4、服务标准的发展1.1 Web服务概念服务概念Web服务定义服务定义v2004年年4月,月,W3C给出了一个相对清晰的给出了一个相对清晰的Web服务的定义:服务的定义:Web服务是一种通过统服务是一种通过统一资源指示符(一资源指示符(URI)标识的软件应用,其)标识的软件应用,其接口及绑定形式可以通过接口及绑定形式可以通过XML标准定义、描标准定义、描述和检索,述和检索,Web服务能够通过服务能够通过XML消息及消息及Internet协议完成与其他软件应用的直接协议完成与其他软件应用的直接交互。从外部的使用者的角度而言,交互。从外部的使用者的角度而言,Web服务是一种部署在服务是一种部署在Web

5、上的对象上的对象/组件。组件。1.1 Web服务概念服务概念Web服务的类别服务的类别vBusiness-Oriented Web Service:该类服务针:该类服务针对的是那些面向企业应用服务,包括企业内部的对的是那些面向企业应用服务,包括企业内部的ERP系统,企业间的系统,企业间的SCM/CRM等系统。等系统。vConsumer-Oriented Web Service:此类服务针:此类服务针对的是那些原先的对的是那些原先的B2C的网站的改造,为这些的网站的改造,为这些Browser-Oriented的的Web应用增加应用增加(注意是增加注意是增加)了了Web服务的应用界面,使得第三方的

6、桌面工具或服务的应用界面,使得第三方的桌面工具或其自身提供的增值的桌面工具能够利用更优秀的用其自身提供的增值的桌面工具能够利用更优秀的用户界面提供跨越多个户界面提供跨越多个B2C服务的桌面服务。服务的桌面服务。vDevice-Oriented Web Service: 此类服务的使此类服务的使用终端一般是手持设备和日用家电。用终端一般是手持设备和日用家电。vSystem-Oriented Web Service: 一些传统意义一些传统意义上的系统服务,比如用户权限认证,系统监控等。上的系统服务,比如用户权限认证,系统监控等。1.1 Web服务概念服务概念Web Services的特征的特征v完

7、好的封装性完好的封装性v松散耦合松散耦合v使用标准协议规范使用标准协议规范v高度可集成能力高度可集成能力1.2 Web服务体系结构服务体系结构1.2 Web服务体系结构服务体系结构交互的过程如下:交互的过程如下:v发布服务:服务提供着将发布服务:服务提供着将Web服务发布到服服务发布到服务注册中心处进行注册,格式为务注册中心处进行注册,格式为WSDL文档文档v客户查询服务注册中心,以找到服务的位置客户查询服务注册中心,以找到服务的位置v服务注册中心引导客户找到服务注册中心引导客户找到WSDL文档文档v客户访问客户访问WSDL文档文档vWSDL提供与提供与Web服务交互的数据服务交互的数据v客户

8、发送客户发送SOAP消息请求消息请求vWeb服务返回服务返回SOAP消息应答消息应答1.2 Web服务体系结构服务体系结构Web Serivces体系结构中的角色体系结构中的角色v服务提供者。从企业的角度看,这是服务的所有者。服务提供者。从企业的角度看,这是服务的所有者。从体系结构的角度看,这是托管访问服务的平台。从体系结构的角度看,这是托管访问服务的平台。 v服务请求者。从企业的角度看,这是要求满足特定服务请求者。从企业的角度看,这是要求满足特定功能的企业。从体系结构的角度看,这是寻找并调功能的企业。从体系结构的角度看,这是寻找并调用服务,或启动与服务的交互的应用程序。服务请用服务,或启动与

9、服务的交互的应用程序。服务请求者角色可以由浏览器来担当,由人或无用户界面求者角色可以由浏览器来担当,由人或无用户界面的程序来控制它。的程序来控制它。 v服务注册中心。这是可搜索的服务描述注册中心,服务注册中心。这是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描述。在静态绑定服务提供者在此发布他们的服务描述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并开发或动态绑定执行期间,服务请求者查找服务并获得服务的绑定信息(在服务描述中)。获得服务的绑定信息(在服务描述中)。1.2 Web服务体系结构服务体系结构Web 服务体系结构中的操作服务体系结构中的操作v发布。为了使服务可访问,

10、需要发布服务描发布。为了使服务可访问,需要发布服务描述以使服务请求者可以查找它。述以使服务请求者可以查找它。v查找。在查找操作中,服务请求者直接检索查找。在查找操作中,服务请求者直接检索服务描述或在服务注册中心中查询所要求的服务描述或在服务注册中心中查询所要求的服务类型。服务类型。v绑定。最后需要调用服务。在绑定操作中,绑定。最后需要调用服务。在绑定操作中,服务请求者使用服务描述中的绑定细节来定服务请求者使用服务描述中的绑定细节来定位、联系和调用服务,从而在运行时调用或位、联系和调用服务,从而在运行时调用或启动与服务的交互。启动与服务的交互。1.2 Web服务体系结构服务体系结构Web 服务的

11、构件服务的构件v服务。服务。Web 服务是一个由服务描述来描述服务是一个由服务描述来描述的接口,服务描述的实现就是该服务。服务的接口,服务描述的实现就是该服务。服务是一个软件模块,它部署在由服务提供者提是一个软件模块,它部署在由服务提供者提供的可以通过网络访问的平台上。供的可以通过网络访问的平台上。v服务描述。服务描述包含服务的接口和实现服务描述。服务描述包含服务的接口和实现的细节。其中包括服务的数据类型、操作、的细节。其中包括服务的数据类型、操作、绑定信息和网络位置。还可能包括可以方便绑定信息和网络位置。还可能包括可以方便服务请求者发现和利用的分类及其它元数据。服务请求者发现和利用的分类及其

12、它元数据。服务描述可以被发布给服务请求者或服务注服务描述可以被发布给服务请求者或服务注册中心。册中心。1.3 Web服务协议栈服务协议栈1.3 Web服务协议栈服务协议栈XMLvXML,或称为可扩展标记语言(,或称为可扩展标记语言(Extensible Markup Language),是一种可以用来创建自己),是一种可以用来创建自己的标记的标记语言。它由万维网协会(的标记的标记语言。它由万维网协会(W3C)创建,)创建,用来克服用来克服 HTML(即超文本标记语言(即超文本标记语言(Hypertext Markup Language),它是所有网页的基础)的),它是所有网页的基础)的局限。局

13、限。v和和 HTML 一样,一样,XML 基于基于 SGML 标准通用标标准通用标记语言(记语言(Standard Generalized Markup Language)。尽管)。尽管 SGML 已在出版业使用了数十已在出版业使用了数十年,但其理解方面的复杂性使许多本打算使用它的年,但其理解方面的复杂性使许多本打算使用它的人望而却步(人望而却步(SGML 也代表也代表“听起来很棒,但或许听起来很棒,但或许以后会用(以后会用(Sounds great, maybe later)”)。)。vXML 是为是为 Web 设计的。设计的。 1.3 Web服务协议栈服务协议栈XML是一种类似于是一种类似

14、于HTML的标记语言的标记语言 XML是用来描述数据的是用来描述数据的 XML的标记不是在的标记不是在XML中预定义的,你中预定义的,你必须定义自己的标记必须定义自己的标记 XML使用文档类型定义(使用文档类型定义(DTD)或者模)或者模式(式(Schema)来描述数据)来描述数据 XML使用使用DTD或者或者Schema后就是自描后就是自描述的语言述的语言1.3 Web服务协议栈服务协议栈 SONG Hot Cop Hot Cop Jacques Morali Jacques Morali Henri Belolo Henri Belolo Victor Willis Victor Will

15、is Jacques Morali Jacques Morali PolyGram Records PolyGram Records 6:20 6:20 978 978 Village People Village People 1.3 Web服务协议栈服务协议栈SOAPvSOAP(Simple Object Access Protocol)简单对象访问协议是在分散或分布式的环境简单对象访问协议是在分散或分布式的环境中交换信息的简单的协议,是一个基于中交换信息的简单的协议,是一个基于XML的协议。的协议。vSOAP 技术有助于实现大量异构程序和平台技术有助于实现大量异构程序和平台之间的互操作性

16、,从而使存在的应用能够被之间的互操作性,从而使存在的应用能够被广泛的用户所访问。广泛的用户所访问。vSOAP是把成熟的基于是把成熟的基于HTTP的的WEB技术与技术与XML的灵活性和可扩展性组合在了一起。的灵活性和可扩展性组合在了一起。 1.3 Web服务协议栈服务协议栈SOAP由四部分组成:由四部分组成:vSOAP envelope(SOAP信封),它构造定义了一信封),它构造定义了一个整体的表示框架,可用于表示在消息个整体的表示框架,可用于表示在消息(message) 中的是什么,谁应当处理它,以及中的是什么,谁应当处理它,以及这是可选的还是强制的。这是可选的还是强制的。vSOAP enc

17、oding rules (SOAP编码规则),它编码规则),它定义了一个数据的编序机制,通过这个编序机制来定义了一个数据的编序机制,通过这个编序机制来定义应用程序中的数据类型,并可用于交换应用程定义应用程序中的数据类型,并可用于交换应用程序定义的数据类型的实例。序定义的数据类型的实例。vSOAP RPC representation(SOAP RPC表示),表示),它定义了一个用于表示远端过程调用和响应的约定。它定义了一个用于表示远端过程调用和响应的约定。vSOAP binding(SOAP绑定),它定义了一个使绑定),它定义了一个使用底层传输协议来完成在结点间交换用底层传输协议来完成在结点间

18、交换SOAP信封的信封的约定。约定。1.3 Web服务协议栈服务协议栈 1 2001-06-22 11:00 下午下午2:00,去邮局寄出重要商业函件,去邮局寄出重要商业函件 1.3 Web服务协议栈服务协议栈WSDL概念概念vWeb 服务描述语言(服务描述语言(Web Services Description Language,WSDL)是用于)是用于描述描述Web服务的一种服务的一种XML语言,它以一种语言,它以一种结构化的方式将结构化的方式将Web服务描述为一组对消服务描述为一组对消息进行操作的网络端点息进行操作的网络端点v一个一个WSDL服务描述包含对一组操作和消息服务描述包含对一组操

19、作和消息的一个抽象定义,绑定到这些操作和消息的的一个抽象定义,绑定到这些操作和消息的一个具体协议,和这个绑定的一个网络端点一个具体协议,和这个绑定的一个网络端点规范规范1.3 Web服务协议栈服务协议栈WSDL描述描述Web服务的三个基本属性:服务的三个基本属性:服务做些什么服务做些什么?v服务所提供的操作服务所提供的操作(方法方法);如何访问服务?如何访问服务?v数据格式以及访问服务操作的必要协议;数据格式以及访问服务操作的必要协议;服务位于何处?服务位于何处?v由特定协议决定的网络地址,如由特定协议决定的网络地址,如URL。1.3 Web服务协议栈服务协议栈WSDLWSDL文档的主要元素文

20、档的主要元素提供用于描述所交提供用于描述所交换消息的数据类型换消息的数据类型定义定义定义通信中使用的定义通信中使用的消息的数据结构,消息的数据结构,有多个部分组成,有多个部分组成,每部分通过每部分通过TypesTypes来表示来表示定义了一种服务访定义了一种服务访问入口的类型,是问入口的类型,是抽象操作的集合,抽象操作的集合,操作一般有一条输操作一般有一条输入消息和输出消息入消息和输出消息为由特定为由特定Port Port TypeType定义的操作和定义的操作和消息指派具体的传消息指派具体的传输协议和数据格式输协议和数据格式规范规范为为BindingBinding制定一制定一个地址,从而定义

21、个地址,从而定义一个服务访问点一个服务访问点用于聚合一组相关用于聚合一组相关的服务访问点,以的服务访问点,以构成一个构成一个WebWeb服务服务定义定义1.3 Web服务协议栈服务协议栈服务接口组成了服务描述中的可重用部服务接口组成了服务描述中的可重用部分,分,vtype元素、元素、message和和portType。vtypes元素中描述消息中复杂数据类型的使元素中描述消息中复杂数据类型的使用。用。vmessage元素指定元素指定XML 数据类型组成消息数据类型组成消息的各个部分。的各个部分。message 元素用于定义操作元素用于定义操作的输入和输出参数。的输入和输出参数。vportTyp

22、e元素中定义了元素中定义了Web服务的操作。服务的操作。操作定义了输入和输出数据流中可以出现的操作定义了输入和输出数据流中可以出现的XML消息。消息。1.3 Web服务协议栈服务协议栈服务实现定义是一个描述给定服务提服务实现定义是一个描述给定服务提供者如何实现特定服务接口的供者如何实现特定服务接口的WSDL文档。文档。v有有binding和和services。vbinding 元素描述特定服务接口的协议、元素描述特定服务接口的协议、数据格式、安全性和其它属性。数据格式、安全性和其它属性。vservice元素。服务元素包含一组元素。服务元素包含一组port元素。端口将端点与来自服务接口定义元素。

23、端口将端点与来自服务接口定义的的binding 元素关联起来。元素关联起来。1.3 Web服务协议栈服务协议栈UDDIvUDDI(Universal Description, Discovery and Integration) ,统一描述、发现和集成协议,是新,统一描述、发现和集成协议,是新一代的基于一代的基于Internet的电子商务技术标准。它包含的电子商务技术标准。它包含一组基于一组基于Web的、分布式的、的、分布式的、Web服务信息注册中服务信息注册中心的实现标准,并且包含一组使企业能将自己提供的心的实现标准,并且包含一组使企业能将自己提供的Web服务注册(发布)到信息注册中心以便其

24、他商服务注册(发布)到信息注册中心以便其他商业实体能够迅速发现的访问协议的实现标准。业实体能够迅速发现的访问协议的实现标准。v统一描述、发现和集成协议统一描述、发现和集成协议(UDDI)标准定义了标准定义了Web服务的注册发布与发现的方法。服务的注册发布与发现的方法。UDDI 提倡提倡 Web 服服务之间的相互操作和相互采用务之间的相互操作和相互采用1.3 Web服务协议栈服务协议栈UDDI Registry其它企业通过查询其它企业通过查询UDDI注册中心获取已经注册的注册中心获取已经注册的服务信息服务信息3.企业使用这些信息易企业使用这些信息易于调用这些服务并且于调用这些服务并且易于集成易于

25、集成4.2.企业注册它们所支持企业注册它们所支持的服务的服务BusinessDescriptions软件公司、标准化组织以及程软件公司、标准化组织以及程序员在序员在UDDI注册中心发布服注册中心发布服务类型务类型1.ServiceTypesUDDI运作模式运作模式1.4 Web服务的局限性服务的局限性大多数大多数Web服务所基于的标准服务所基于的标准SOAP、WSDL、和、和UDDI还很新,还需要进一步还很新,还需要进一步改进才能定案。改进才能定案。Web服务标准采用的问题是有关版权费服务标准采用的问题是有关版权费的纷争。的纷争。Web服务安全标准的缺乏是另外一个阻服务安全标准的缺乏是另外一个

26、阻碍其使用的重要因素。碍其使用的重要因素。计算机产业目前还没有制定标准的描述计算机产业目前还没有制定标准的描述Web服务质量的方法和步骤。服务质量的方法和步骤。1.5 Web服务标准的发展服务标准的发展标准制定团体标准制定团体v万维网联盟万维网联盟W3C(World Wide Web Consortium)v结构化信息标准组织结构化信息标准组织OASIS(Organization of the Advancement of Structured Information Standards,OASIS)1.5 Web服务标准的发展服务标准的发展W3Cv1994年,万维网创始人之一的年,万维网创始

27、人之一的Tim Beners Lee创建了创建了W3CvW3C拥有大约拥有大约500家成员组织,是推动家成员组织,是推动Web服务技术发展的最具有影响力的标准服务技术发展的最具有影响力的标准制定团体。制定团体。vW3C工作组是指开发和改进某特定工作组是指开发和改进某特定Web技技术的一些技术专家所组成的小组。术的一些技术专家所组成的小组。v/1.5 Web服务标准的发展服务标准的发展W3C与与Web服务服务v2000年年5月,最早的月,最早的SOAP规范的创建者规范的创建者Microsoft和和Ariba、Commerce One、HP、IBM、IONA以及以及Lotus一起将一起将SOAP1.1提交给提交给W3C标准化标准化v2000年年9月建立月建立“XML协议行动协议行动”来解决来解决SOAP及相关及相关协议标准化的问题协议标准化的问题v2001年年7月,月,W3C发布了发布了SOAP1.2的一个最初工作草案;的一个最初工作草案;2001年年12月发布了第二个工作草案月发布了第二个工作草案 v2002年年1月,月,W3C又建立了一个又建立了一个“Web服

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论