资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,课程名称,主讲教师:XXX,第六章,Web服务 (,Web Service) 技术,章节内容,Web Service的主要技术,2,异构,平台的整合,4,Web Service,的简介,3,1,Web Service的应用,3,3,什么是Web Service,什么是Web Service呢?从表面上看,,Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API,。这就是说,你能够用编程的方法通过Web调用来实现某个功能的应用程序。从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、自描述、模块化的应用,可以在网络(通常为Web)中被描述、发布、查找以及通过Web来调用。,Web Service便是基于网络的、分布式的模块化组件,,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其他兼容的组件进行互操作。,它可以使用标准的互联网协议,像超文本传输协议HTTP和XML,,将功能体现在互联网和企业内部网上。,Web Service平台是一套标准,它定义了应用程序如何在Web上实现互操作性,。你可以用你喜欢的任何语言,在你喜欢的任何平台上写Web Service。,Web Service 为,Internet,上的组件服务,通过网络提供,以,URL 定位方法调用,以Internet技术为基础,未來的分散式应用程序,课程名称,高层次,的复用(,reuse),Function,Reuse,Object,Reuse,Service,Reuse,Lib,Lib,Lib,Obj,Obj,Obj,Application,Application,Web Service的标准,SOAP (Simple Object Access Protocol),UDDI (Unviversal Description ,Discovery,and Integration),统一描述发现和集成协议,公,开,的,或是,企业,自己的,注册与查询,WSDL (Web Service Description Language),Web Service,描述,语言,Web Service的标准,1. XML Web Service,通过标准的,Web,协议向,Web,用户提供有用的功能。多数情况下使用,SOAP,协议。,2. XML Web Service,可以非常详细地说明其接口,这使用户能够创建客户端应用程序与它们进行通信。这种说明通常包含在称为,Web,服务说明语言,(WSDL),文档的,XML,文档中。,3. XML Web Service 已经过注册,以便潜在用户能够轻易地找到这些服务,这是通过通用发现、说明和集成 (UDDI) 来完成的。,4.,XML Web Service,体系结构,的主要优点之一是,:,允许在不同平台上、以不同语言编写的各种程序以基于标准的方式相互通信,。,5,.我们将,XML Web Service,定义为,:,通过,SOAP,在,Web,上提供的软件服务,使用,WSDL,文件进行说明,并通过,UDDI,进行注册。,SOAP,Soap,是,XML Web Service,的通信协议。,SOAP,是,一种规范,用来定义消息的,XML,格式,。包含在一对,SOAP,元素中的、结构正确的,XML,段就是,SOAP,消息。,SOAP 规范的其他部分介绍如何将程序数据表示为 XML,以及如何使用 SOAP 进行远程过程调用 (RPC)。这些可选的规范部分用于实现 RPC 形式的应用程序,,其中客户端将发出一条 SOAP 消息(包含可调用函数,以及要传送到该函数的参数),然后服务器将返回包含函数执行结果的消息,。,目前,多数 SOAP 实现方案都支持 RPC 应用程序。SOAP 还支持文档形式的应用程序,在这类应用程序中,,SOAP 消息只是 XML 文档的一个包装,。文档形式的 SOAP 应用程序非常灵活,许多新的 XML Web Service 都利用这一特点来构建使用 RPC 难以实现的服务,SOAP,SOAP 规范的最后一个可选部分定义了包含 SOAP 消息 的 HTTP 消,息的样式。此 HTTP 绑定非常重要,因为几乎所有当前的 OS(以及,许多以前的 OS)都支持 HTTP. HTTP 绑定虽然是可选的,但几乎所,有 SOAP 实现方案都支持 HTTP 绑定,因为它是 SOAP 的唯一标准,协议。由于这一原因,人们通常误认为 SOAP 必须使用 HTTP。其实,,有些实现方案也支持 MSMQ、MQ 系列、SMTP 或 TCP/IP 传输,但,由于 HTTP 非常普遍,几乎所有当前的 XML Web Service 都使用它。,由于 HTTP 是 Web的核心协议,因此大多数组织的网络基础结构都,支持HTTP。,到目前为止,,SOAP,最引人注目的特征是它可以在许多不同的软件和硬,件平台上实现。这意味着,SOAP,可用于链接企业内部和外部的不同系统。,HTTP,的普及和,SOAP,的简单性使您几乎可以从任何环境调用它们,,因此成为,XML Web Service,的理想基础。,SOAP,的用户并不直接编写,SOAP,消息,而是使用,SOAP,工具包来创建和分析,SOAP,消息。这些工,具包通常将函数调用从某种语言转换为,SOAP,消息。,SOAP(HTTP+XML),SOAP,Application,Service,SOAP,Client,SOAP,Processor,Service,Application,SOAP,Request,SOAP,Response,UDDI,UDDI 目录条目是介绍所提供的业务和服务的 XML 文件。UDDI 目录条目包括三个部分。,“白页”介绍提供服务的公司:名称、地址、联系方式等等;,“黄页”包括基于标准分类法的行业类别,;,“绿页”详细介绍了访问服务的接口,以便用户能够编写应用程序以使,用 Web 服务。,服务的定义是通过一个称为类型模型(或 tModel)的 UDDI 文档来完成的。多数情况下,tModel 包含一个 WSDL 文件,用于说明访问 XML Web Service 的 SOAP 接口,但是 tModel 非常灵活,可以说明几乎所有类型的服务。,UDDI 目录还包含若干种方法,可用于搜索构建您的应用程序所需的服务。例如,您可以搜索特定地理位置的服务提供商或者搜索特定的业务类型。之后,UDDI 目录将提供信息、联系方式、链接和技术数据,以便您确定能满足需要的服务。,UDDI 允许您查找提供所需的 Web 服务的公司。如果您已经知道要与谁进行业务合作,但尚不了解它还能提供哪些服务,这时该如何处理呢?WS-Inspection 规范(英文)允许您浏览特定服务器上提供的 XML Web Service 的集合,从中查找所需的服务。,UDDI,UDDI,White Pages,公司基本资料,Green Pages,技术信息,Yellow Pages,Service,的种类,WSDL,Web Service Description Language (WSDL):,用来定义,Web Service交换,的文件格式以及提供服务方式的说明文件,WSDL 表示 Web 服务说明语言,是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。WSDL 对于 SOAP 的作用就象 TLD 对于Tiglib的作用。由于 WSDL 是 XML 文档,因此很容易进行阅读和编辑;,但大多数情况下,它由软件生成和使用,。,要查看 WSDL 的值,可以假设您要调用由您的一位业务伙伴提供的 SOAP 方法。您可以要求对方提供一些 SOAP 消息示例,然后编写您的应用程序以生成并使用与示例类似的消息。WSDL 通过明确的表示法指定请求消息必须包含的内容以及响应消息的样式,。,WSDL,WSDL 文件用于说明消息格式的表示法以 XML 架构标准为基础,这意味着它与编程语言无关,而且以标准为基础,因此适用于说明可从不同平台、以不同编程语言访问的 XML Web Service 接口。除说明消息内容外,,WSDL 还定义了服务的,位置,以及,使用什么通信协议与服务进行通信。WSDL 文件定义了编写使用 XML Web Service 的程序所需的全部内容,。,当前,许多 SOAP 工具包都包括从现有程序接口生成 WSDL 文件的工具,但却几乎没有直接用于编写 WSDL 的工具,而且 WSDL 的工具支持也很不完整。但不久就会出现编写 WSDL 文件的工具,接着还会有生成代理和存根的工具(与 COM IDL 工具很相似),这些工具将成为多数 SOAP 实现方案的一部分。到那时,WSDL 将成为创建 XML Web Service 的 SOAP 接口的首选方法。,由,W3C,制定的标准,发布,查询,Web Service,提供者,绑定,Internet,SOAP,SOAP,SOAP,Web Service的应用,可以利用Web Service作为B2B跨平台整合的机制。,即时资讯服务公司(音乐、电影、股票等)可以利用Web Service,提供各种平台资讯服务。,仓储、货运业可以通过Web Service結合移动设备,建立即时管理系统。,异构,平台的整合企业內外系统的整合,Application,Server,SOAP/HTTP,SOAP/HTTP,SOAP/HTTP,UDDI,CRM,下游工厂,分公司,经销,商,异构,平台的整合-,Galileo,42000,travel agency,511 airlines,37 car rental,47000 hotel,WebService,实例,在环境变量中设置当前JDK为1.4.2,将weblogic.jar和webservice.jar设置到classpath中,将C:beaweblogic81serverbin设置到path中,编写并编译源文件StockTrade.java,javac d . StockTrade.java,运行ant命令,生产ear文件和stocktrade_client.jar文件,并将jar文件设置到classpath中,将生成的ear文件部署到Weblogic中,编辑StockClient.java源文件,删除生成的examples包, 编译StockClient.java源文件,javac d . StockClient.java,运行编译的测试客户端类StockClient并观察输出结果,java examples.StockClient,Web Service小结,重点在应用而非技术,可先将现有功能模块重新包装,Web Service 组件, 可重复使用降低开发成本,协同开发慢慢取代独立开发,本章小结,Web Service 的简介,Web Service的主要技术,Web Service的应用,异构平台的整合,谢谢观看,
展开阅读全文