Web服务:原理和技术描述Web服务.ppt

上传人:wuy****n92 文档编号:80449450 上传时间:2023-03-23 格式:PPT 页数:32 大小:1.04MB
返回 下载 相关 举报
Web服务:原理和技术描述Web服务.ppt_第1页
第1页 / 共32页
Web服务:原理和技术描述Web服务.ppt_第2页
第2页 / 共32页
点击查看更多>>
资源描述

《Web服务:原理和技术描述Web服务.ppt》由会员分享,可在线阅读,更多相关《Web服务:原理和技术描述Web服务.ppt(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、山东大学计算机学院第第5章:描述章:描述Web服务服务山东大学计算机学院学习目标主要讨论Web服务描述语言(WSDL)版本1.1为何需要Web服务描述语言Web服务接口定义和Web服务实现这两者之间的差异在WSDL中定义Web服务接口和实现WSDL消息交换协定WSDL如何提供非功能性服务特性山东大学计算机学院目录为何需要服务描述WSDL:Web服务描述语言使用WSDL生成客户端stubWSDL中的非功能性描述小结山东大学计算机学院为何需要服务描述为了开发基于服务的应用和业务处理(可能包含多个服务),需要以一致的方式来描述Web服务对于实现SOA松耦合,将服务提供者和服务请求者的应用集成在一起,

2、减少定制程序的开发以及更好地理解相关知识,服务描述都是一个重要方面服务描述是一个机器可理解的规范,它描述了Web服务的结构、操作特性和非功能性特性服务描述规定了Web服务所使用的连线格式和传输协议服务描述能使用类型系统描述载荷数据服务描述可以包括元数据、行为属性以及策略描述山东大学计算机学院目录为何需要服务描述WSDL:Web服务描述语言WSDL的接口定义、实现、消息交换模式使用WSDL生成客户端stubWSDL中的非功能性描述小结山东大学计算机学院WSDL:Web服务描述语言在一个特定的Web服务中使用SOAP将需要用到一些文档这些文档以计算机所理解的标准格式说明SOAP消息的结构、所用的协

3、议(例如HTTP)、所暴露的操作和它们的参数以及Web服务的互联网格式WSDL使得Web服务提供者以及这些服务的用户之间可以更容易地协作,从而更容易地实现SOAP所能带来的好处WSDL是一个服务描述语言,用于描述Web服务所暴露的所有接口的详细信息因此,WSDL是一种访问Web服务的方法通过服务描述,服务提供者可以采用各种规范调用服务请求者所需的Web服务山东大学计算机学院WSDL:Web服务描述语言WSDL是一个基于XML的规范操作,用于描述Web服务的公共接口公共接口可以包括与Web服务相关的操作信息诸如所有公开可用的操作、Web服务支持的XML消息协议、消息的数据类型信息、具体使用的传输

4、协议的绑定信息、Web服务的地址信息等WDSL表示了服务请求者和服务提供者之间的“约定”WSDL具有平台独立性和语言独立性WSDL主要用于描述基于SOAP的服务仅关心同时涉及双方的信息,不关心仅与其中一方相关的信息在WSDL中,服务请求者能够描述Web请求的基本格式或者编码山东大学计算机学院WSDL:Web服务描述语言WSDL规范事实上分成两部分服务接口定义(抽象接口)描述了通用的Web服务接口定义的结构。服务接口定义包含服务所支持的所有操作、操作参数和抽象数据类型服务实现定义(具体端点)将抽象接口绑定到具体的网络地址、具体的协议和具体的数据结构。Web客户端可以绑定到一个具体的实现并调用服务

5、这两部分组合后包含了大量的信息,这些信息描述了服务请求者如何在服务提供者的节点上调用Web服务,以及服务请求者如何与Web服务交互山东大学计算机学院WSDL开发中涉及的选择问题在WSDL开发中,涉及几个设计方面的选择问题平台和语言的独立性最重要的问题之一对于多协议、多编码模式和可扩充性的支持对于消息和RPC建模的统一支持操作的无顺序性山东大学计算机学院WSDL的接口定义服务客户端通过调用操作与Web服务进行交互,在Web服务接口中,可以将相关的操作进行分组客户端不仅需要知道Web服务的接口和它所包含的操作,也必须知道使用何种协议将消息发送到服务中,并需要知道所使用的协议的具体机制例如,命令、头

6、部和出错代码的使用WSDL指定了描述Web服务的语法和句法,可将Web服务描述为通信端点的集合山东大学计算机学院WSDL的接口定义Web服务接口定义描述了消息、操作和端口类型,并且具体的描述保持了平台独立性和语言独立性Web服务接口定义被视为Web服务的抽象定义,不携带任何具体部署信息Web服务接口定义精确地描述了需要发送的消息的类型,以及如何应用各种Internet标准消息传送协议和编码模式,以便用与服务提供者的规范相兼容的方式格式化消息服务接口定义是一种抽象的服务描述,可通过多个具体的服务实现加以实例化和引用山东大学计算机学院山东大学计算机学院WSDL的接口定义WSDL中,、元素描述了We

7、b服务的抽象接口元素本质上是一个抽象接口,由和定义组成每一个定义描述了消息的有效载荷,这些消息既可以是由Web服务向外发送的消息,也可以是它所接受的消息消息由元素组成,每一个元素表示一个类型(类型化参数)的实例通过元素可以声明元素每一个元素都包含了许多定义,这些定义描述它的输入输出参数以及任何出错情况山东大学计算机学院简单的WSDL接口定义山东大学计算机学院WSDL的实现WSDL的目的就是首先抽象地定义Web服务,然后规定WSDL开发者如何实现这些服务服务的具体的实现层规定了如何实现服务的抽象定义WSDL的服务实现部分包含元素、和,并描述了服务提供者如何实现一个特定的服务接口服务实现描述了,为

8、了调用Web服务,需要将消息发送到哪一个网络地址通过元素,服务实现文档可以包含对多个服务接口文档的引用山东大学计算机学院WSDL服务描述山东大学计算机学院WSDL的消息交换模式WSDL接口支持四类操作,表示了Web服务的最常见的交互模式WSDL操作对应于两类基本的消息接收和发送版本一类是单个的消息接收传送操作和对应的发送操作(单向和通知操作)另一类是同步双向消息交换(请求/响应和要求/响应)山东大学计算机学院WSDL消息交换模式概要山东大学计算机学院目录为何需要服务描述WSDL:Web服务描述语言使用WSDL生成客户端stubWSDL中的非功能性描述小结山东大学计算机学院使用WSDL生成客户端

9、stub大多数Web服务开发者不需要直接和基础设施打交道,有许多Web服务开发工具箱可以帮助处理这些任务对于服务请求者和提供者,当前有许多工具自动将WSDL映射到编程语言Axis提供的WSDL2Java:可以使用Axis编写Java代码,并可将返些代码部署为Web服务山东大学计算机学院使用WSDL生成客户端stub通过集成一些可用的Web服务,开发人员可以在应用中实现Web服务逻辑,且无须从头开始开发新的应用代理类使得这一方法成为可能通过代理类,开发者可以引用远程Web服务,并可在本地应用中调用那些Web服务所提供的功能,那些Web服务所返回的数据就好像是本地生成的代理类(或桩类)是实现Web

10、服务的远程(提供者)对象类的客户端映像在分布式计算环境中,在服务器端与返些代理类对应的类通常称为骨架代理类与远程类实现的是同样的接口代理类会将在本地实例上被调用的方法转发到对应的远程实例(骨架)山东大学计算机学院山东大学计算机学院WSDL代码生成器WSDL非常适合代码生成器代码生成器能够理解WSDL定义,并可生成访问Web服务的编程接口例如,JAX-RPC提供者可以使用WSDL 1.1生成Java RMI接口和网络桩,其中网络桩用于与Web服务接口交换消息WSDL代码生成器工具可自动创建Web服务、自动生成WSDL文件以及自动调用Web服务基于WSDL规范,工具箱软件可生成服务实现模板代码通过

11、使用这些模板代码,以及利用具体应用的实现细节,开发者可以更快地创建Web服务山东大学计算机学院代理类与Web服务之间的通信1、客户端应用在代理类中执行调用,并将任何所需的变量传递给代理类,并且无须知道代理实际上是在调用一个远程Web服务2、代理接受调用,然后基于客户端应用所提供的参数,按一定的格式生成服务请求3、将调用从代理跨网络传输到Web服务4、Web服务基于代理所提供的参数执行相关服务操作,并用XML表示请求处理的结果5、Web服务将结果数据返回给客户端代理6、代理对于从Web服务返回的数据进行解析,从而获取各个数据值。这些值既可以是简单数据类型,也可以是复杂数据类型7、应用从代理操作中

12、接收这些标准格式的数值,并且完全无须知道这些结果实际上是通过Web服务调用获取的山东大学计算机学院山东大学计算机学院目录为何需要服务描述WSDL:Web服务描述语言使用WSDL生成客户端stubWSDL中的非功能性描述小结山东大学计算机学院WSDL中的非功能性描述对于任何Web服务,非功能性特性都是重要的有机组成部分之一Web服务平台能够支持具有不同QoS需求的、多种不同类型的应用对于启用QoS的Web服务来说,需要一种单独的语言来描述Web服务的非功能性特性描述Web服务非功能性特性的最常用方法是WS-Policy和WS-PolicyAttachmentWeb服务策略框架对于服务提供了附加的

13、描述层,并提供了一种声明策略语言可使用声明策略语言来表示策略或对策略进行编程通过策略语言,可以描述Web服务驻留环境的特性,包括提供者端点的安全特性(包括认证和授权)、事务行为、QoS的等级、提供者所提供的保护质量、提供者所遵循的隐私策略、具体应用服务的选项、针对特定服务域的能力与约束山东大学计算机学院WSDL中的非功能性描述就涉及QoS的Web服务而言,需要对服务接口规范进行扩充,在服务接口规范中添加一些有关QoS的语句这些QoS语句可以关联到整个接口,或者关联到单个的操作和属性WS-PolicyAttachment提供了一种灵活的方式,可将策略表达与已有的或未来的Web服务关联起来山东大学

14、计算机学院目录为何需要服务描述WSDL:Web服务描述语言使用WSDL生成客户端stubWSDL中的非功能性描述小结山东大学计算机学院小结服务描述语言是一个基于XML的语言,它描述了和特定Web服务之间的交互机制,并且使用该语言可以约束服务提供者以及使用服务的所有请求者Web服务描述语言是一个基于XML的规范模式,提供了一个标准的服务表示语言,可用于描述Web服务所暴露的公共接口细节WSDL的服务实现部分描述了一个特定的服务提供者如何实现一个具体的服务接口WSDL规定了服务的句法签名,但是对于非功能性服务方面并没有进行任何规定山东大学计算机学院小结当前,W3C正忙于对WSDL进行标准化虽然在本书中将使用WSDL 1.1,该标准也是实际标准,但是W3C目前正在制定新的WSDL标准WSDL 2.0WSDL 2.0在若干方面都进行了改进,包括语言的澄清说明和简化,以及对于互操作性的支持,因此开发人员可以更容易地了解和描述服务最近,WSDL 1.2定义也已经在一些方面进行了修改也支持一些有用的新特性可以预测,由于工具和运行时环境的原因,还需一段较长的时间,WSDL2.0才能全面取代WSDL 1.1山东大学计算机学院谢谢!谢谢!

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

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁