基于Web服务的体系结构设计研究(赵岩).doc

上传人:精*** 文档编号:880181 上传时间:2024-03-10 格式:DOC 页数:35 大小:307.18KB
下载 相关 举报
基于Web服务的体系结构设计研究(赵岩).doc_第1页
第1页 / 共35页
基于Web服务的体系结构设计研究(赵岩).doc_第2页
第2页 / 共35页
基于Web服务的体系结构设计研究(赵岩).doc_第3页
第3页 / 共35页
基于Web服务的体系结构设计研究(赵岩).doc_第4页
第4页 / 共35页
基于Web服务的体系结构设计研究(赵岩).doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、 基于Web服务的体系结构设计研究 基于Web服务的体系结构设计研究摘要Web服务(web service)是基于XML和HTTPS的一种服务,其通信协议主要基于SOAP,服务的描述通过WSDL,通过UDDI来发现和获得服务的元数据。Web 服务是一个针对应用集成这个难题而发展的革新技术。使用Web 服务将各种应用程序和信息系统进行封装、组合和集成以达到动态电子商务的目标。它是基于XML和HTTPS的一种服务,其通信协议主要基于SOAP,服务的描述通过WSDL,通过UDDI来发现和获得服务的元数据。它定义了应用程序如何在Web上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写We

2、b service ,只要我们可以通过Web service标准对这些服务进行查询和访问。本文主要就Web服务体系结构进行分析,了解了什么是Web服务,它的服务栈及其相应的协议,针对基于Web服务的电子商务平台的优越性进行了分析研究。具体研究了电子商务的服务接口设计及其系统需求分析,作为一种构建在Web服务之上的新型电子交易市场,电子商务实现了自身系统与图书供应商和消费者之间的自主式的极少人工干预的自动化系统集成。通过使用Web服务,网上书城能通过抽象和混合将自身的电子商务功能组件化,并方便地在不同的商业伙伴之间共享,从而架构起高度集成的、安全灵活的跨企业的动态电子商务业务流程。使用Web 服

3、务将各种应用程序和信息系统进行封装、组合和集成以达到动态电子商务的目标。 关键词: Web服务,体系结构, 电子商务 The design and research of Architecture Based on Web Service AbstractWeb service is based on xml 忽略此处s and a service agreement, the main communication based on the soap, the service description through a wsdl by uddi to find and get the meta

4、data. Web service is an application for the integration of the problem and the development of innovative technology. the use of web services will be a variety of applications and information systems around and combined to achieve a dynamic and integrated electronic commerce purpose. it is based on x

5、ml 忽略此处s and a service agreement, the main communication based on the soap, the service description through a wsdl by uddi to find and get the metadata. it defines the web application to the realization of interoperability. This article mainly on web service architecture to analyze and understand wh

6、at is the web service that the services of the stack and related agreement based on the web services in response to the platform of the superiority of e-commerce analyzed studies. specific studies the online bookstore service interface design and its system needs analysis, As a kind of building web

7、services in the new electronic market, online bookstore achieve its own system and book vendors and the consumer of few man-made intervention of the automated systems integration. by using the web service by an online bookstore and the blending of e-commerce will function components, and convenient

8、in different business partners share this framework, a highly integrated, security and flexibility across the enterprise e-commerce business process. the dynamic the use of web services will be a variety of applications and information systems around and combined to achieve a dynamic and integrated

9、electronic commerce purpose.Key Words:Web Service,Architecture , E-commerce目录1Web服务11.1为什么需要Web服务11.2 Web服务的研究现状11.3 研究目的和研究内容42. 电子商务42. 1 动态电子商务概述42.2 Web服务概述52.2.1 Web 服务的概念52.2.2 Web 服务的优点和应用范围62.3 Web服务相关协议82.3.1 SOAP协议82.3.2 WSDL协议92.3.3 UDDI协议103. 基于Web服务的具体解决方案123.1 解决方案123.2 基于Web服务的体系结构133

10、.3 Web服务协议栈163.4 WS-Security183.5 基于Web服务的电子商务方案的优缺点193.6 基于Web服务的电子商务解决方案的软件开发模式204. 需求分析214.1 电子商务在线交易平台需求分析214.2 系统设计目标234.3 系统技术路线234.4 系统运行的软硬件环境234.5 电子商务平台服务接口设计234.6 电子商务平台服务接口所需的对象254.7 电子商务平台服务接口的域及其具体化25总结29参考文献30301Web服务1.1为什么需要Web服务企业的电子商务化,模式是否崭新是次要的,而是否能为企业带来经济利益则是主要的。在规划企业的电子商务应用的时候,

11、企业管理人员和系统架构师更多的关注该电子商务应用是否能为企业带来直接的经济收益、是否有利于削减掉某方面的开支成本、是否能够优化资源使用,这些完完全全是由企业的商业利益驱动的,在这一轮的电子商务发展中,技术完全是为商业服务的,任何脱离商业需求的新技术则必然是毫无用武之地。过去几年中,电子商务应用的开发主要是以技术为主导来决定系统构架和解决方案,其中多数是一次性地开发和实施的,很难再进行应用的扩展或与别的商务系统进行集成。所以企业之间的电子商务实施后基本上是静态的,很少更改数据交换协议。而这些原有的系统的解决方案面对当今的电子商务的新的要求的时候再用原有的解决方案的话则显得束手无策。这些新要求主要

12、面对应用的更新,例如,经常会增加新的电子商务应用,这常常会每几个星期或每几个月发生一次;经常会对电子商务的流程进行更改,这常常每周或每几天发生一次; 经常应用户的需求而进行更改,这甚至每个小时都会发生,尤其是当需要为每个客户、每个合作伙伴或每个企业员工都定制其首选的电子商务应用的时候。毫无疑问,电子商务化的企业必须直面这些问题的挑战,经常的应用更新是当今电子商务应用部署所面临的最大问题,如何提升企业的响应能力,削减响应开支,提升企业的竞争力,是所有的电子商务化化企业必须面对的问题。业的各种动态应用集成都需要解诀程序和程序之间的连接、数据交换、工作流程和交易处理等难题,以满足不断变化的商务需求。

13、那么如何进行能够为企业带来竟争优势的即时动态集成,是今天所有的IT 企业必须面对的问题。1.2 Web服务的研究现状近年来随着Web 服务技术的不断发展, Web 服务己经得到国内外众多的组织和公司,尤其是国外的大公司的支持,如Microsoft、 IBM、 HP、BEA、Sun、Oracle 等业界巨头都在Web 服务领域里投入了大量的研发力量,尤其是IBM 和微软。它们参与制定和开发了Web 服务的相关技术和标准,致力于Web 服务及其相关技术的研究工作,并大力推行Web 服务的应用,目前已经取得了不少的研究成果。其中在开发和推广Web 服务方面做出最大贡献的组织是 W3C( World

14、Wide Web Consortium,互联网联合组织),他们的工作主要围绕着 Web 服务的整体架构、Web 服务的访问协议和Web 服务接口的描述展开。此外,WS-I (Web Services-Interoperability )Organization,网络服务互操作性组织)是由微软、IBM、Oracle、HP、BEA、SAP 等为首的计算机业巨头们共同创建的,致力于推动Web 服务解决方案必须停止继续使用独立的解决方案来实现动态电子商务,必须摆脱基于复杂系统连接代码来实现应用集成的方法。对于动态电子商务而言,传统的由程序员主导的由里向外的开发模式应当被由客户主导的由外向里的开发模式取

15、代。冗长的串行的开发循环应当被即时的,快速的应用装配所取代。Web 服务正是解诀这一问题的最佳手段。Web 服务是一个针对应用集成这个难题而发展的革新技术。使用Web 服务将各种应用程序和信息系统进行封装、组合和集成以达到动态电子商务的目标。Web 服务能够统一地封装信息、行为、数据及商务流程,把应用程序改变成可重用的和柔性的组件。这种技术筒化了系统集成,可以快捷、容易地进行系统连接和集成,而无需考虑应用实施的环境是何种平台系统和设备。通过采用Web 服务,部署和集成的费用大大降低,商务流程的更改也无需更改大量代码,甚至通过工具的支持,根本无需更改程序代码。因此,当企业的核心商务功能用Web

16、服务封装成组件之后,这些商务功能就可以很方便的在不同企业之间共享,架构起跨企业的动态电子商务应用。Web 服务正是解诀这一问题的最佳手段。Web 服务是一个针对应用集成这个难题而发展的革新技术。使用Web 服务将各种应用程序和信息系统进行封装、组合和集成以达到动态电子商务的目标。Web 服务能够统一地封装信息、行为、数据及商务流程,把应用程序改变成可重用的和柔性的组件。这种技术筒化了系统集成,可以快捷、容易地进行系统连接和集成,而无需考虑应用实施的环境是何种平台系统和设备。通过采用Web 服务,部署和集成的费用大大降低,商务流程的更改也无需更改大量代码,甚至通过工具的支持,根本无需更改程序代码

17、。因此,当企业的核心商务功能用Web 服务封装成组件之后,这些商务功能就可以很方便的在不同企业之间共享,架构起跨企业的动态电子商务应用。1、Web Services,即通常所说的Web 服务,它通常是指用于架构Web服务的整体技术框架;一般提到Web 服务,就是指Web 服务技术,Web 服务是用标准的、规范的基于 XML 的WSDL 语言描述,也称为Web 服务的服务描述。这一描述囊括了与服务交互需要的全部细节,包括消息格式、传输协议和位置;Web Service 则是使用Web 服务技术而创建的应用实例。Web 服务是通过标准的Web 协议包装了一些操作(服务/过程/方法)的接口,通过标准

18、化的XML 消息传递机制SOAP 来访问这些操作的可编程访问的Web 组件。2、在2002 年1 月于旧金山召开的Web 服务“新一代Web 服务”的与会者得到的较为一致的看法认为:Web 服务应是一种基于组件的软件平台,是面向服务的Internet 应用。通过对Web 服务的构建,人们可以期望得到一个可编程的Internet。3、W3C 把Web 服务被定义为:Web 服务是一种软件开发协议(UDDI、SOAP、WSDL),由此可将Internet 及其各种表现形式(如Web、Intranet 和Extranet)变成一种可编程的信息沟通平台。综上所述,Web 服务是一种编程模型,提供在可缩

19、放的、松耦合的和非特定平台的环境下交换信息的能力,信息交换使用诸如 HTTP、 XML、SOAP 和WSDL 之类的标准协议,它是一种“自包含、自描述、组件化的应用程序”。它可以被看作是一种特殊的软件模块,能够通过标准的协议在Internet 上组装起来,完成某些功能或者执行商业流程。它是为应用程序的使用而准备,而不是为最终用户准备的,也就是说第三方可把提供的Web服务整合到他们自己的客户应用程序中去,这样便提供了一钟开发解决方案的新途径:无须在系统中设计所需要的功能,只需简单地访问适合的Web服务以执行所需要的操作即可。它通过广泛普及的Internet 使得企业能够快速的实现信息的共享和服务

20、的复用。4、目前,大多数企业采用传统的对象模型方式作为企业的电子商务解决方案。但是这是传统的对等分布式对象结构,如DCOM(Distribute Common Objects Model,分布式组件对象模型)、CORBA(Common Objects Request Broker Architecture,公用对象请求代理体系结构)和RMI(Remote Method Invoke ,远程方法调用),要求客户端与系统提供的服务本身之间必须进行紧密耦合,也就是说这种电子商务应用的实现要求在底层结构上保持一致。每个电子商务应用都是建立在其自己特有的基础架构之上的,企业不得不为每套应用配置特有的专业

21、技术人员,并保持与不同技术供应商或解决方案供应商的密切联系,使得这些应用在部署、更改和维护上的代价都异常高昂。5、对采用传统对象模型方式的电子商务系统进行应用集成也是异常的困难,因为不同的电子商务应用遵循不同的对象模型和采用不同的通信协议,而这些协议无论是在描述数据,或者在描述商务流程方面都存在各式各样的差异。正是由于这些差异的存在,使得在进行系统集成时困难重重,如果集成的任何一方改变了自己的实现机制,那么另一方也不得不随之做相应的改变,否则两者之间的耦合就有失败的危险。电子商务应用的互操作障碍使得各个企业难以快速地发现合适的交易伙伴并与之进行交易,同时也延缓了企业参与电子商务发展的进程。因此

22、在未来的电子商务发展中,电子商务应用之间的互操作性将是一个亟待解决的问题。这些问题是值得在思索的的问题,现今,电子商务技术上已经从采用简单的静态的电子商务网站设计技术和传统对等的分布式系统的应用技术发展到了“软件即为服务”的阶段,软件做为一种服务正成为一个重要的发展趋势,SOA(Service Oriented Architecture ,面向服务的体系结构)成为其中的核心开发及应用模式,作为SOA 的一种实现手段的Web 服务的出现是分布式计算的一个重要里程碑,同时也给解决企业电子商务化过程中存在的问题的带来了新的曙光。1.3 研究目的和研究内容Web 服务是一种由商业需求驱动的,以相关工业

23、标准和规范为核心的一系列开放互操作技术,具备平台的无关性、跨越防火墙的通信、软件重用、高度的可集成能力和互操作性及松散的耦合性等特性,它对未来的Web开发方式、应用方式都将产生根本性的影响。只要企业把商务逻辑暴露出来,成为 Web 服务,就可以让任何指定的合作伙伴调用这些商务逻辑,而不管他们的系统在什么平台上运行,使用什么开发语言,让许多原本无法承受EDI 的中小型企业也能实现B2B 集成,这是基于Web 服务的电子商务应用实现跨平台的互操作性的最大优点。鉴于Web 服务技术上的先进性,论文结合我国中小企业电子商务应用的现状和遇到的问题,把如何利用Web 服务技术的优点来建立具有信息共享、易于

24、集成、动态构建、互操作性强和软件重用性好的适用于中小企业的动态电子商务系统作为论文的研究目的。此外,论文也致力于将Web 服务及其安全领域中新技术及一些相关的思想引入到基于Web 服务和电子商务安全的研究和应用之中。论文先研究了Web 服务的相关技术,包括Web 服务的优点、应用范围、相关的协议、体系结构及安全规范等。在对理论技术研究的基础上,提出了基于Web 服务的动态电子商务解决方案,之后结合对我国分销代理企业电子商务应用的需求研究,设计和实现了基于Web 服务的电子商务平台的原型,最后对基于Web 服务的电子商务应用的安全进行了分析和设计。2. 电子商务2. 1 动态电子商务概述动态电子

25、商务的一种定义是:着重于B2B 的综合性和基础设施组成上的下一代电子商务,通过调节因特网标准和通用基础设施为内部和外部企业计算创造最佳效益。动态电子商务即属于上小节中的第三阶段的电子商务。为了实现动态电子商务,企业可在自己的业务流程与数个合作伙伴之间建立大量的B2B 交互应用,任一方的业务应用可通过双方达成的交互/集成协议与另一方的相关应用进行直接交互。由于这种应用集成十分复杂,因此大多数情况下只适用于特定商业合作伙伴之间的核心应用进程。从本质上来说,动态电子商务关注的是程序与程序之间的交互作用,而不是早期B2C 电子商务阶段占主导地位的客户与程序之间的交互作用。动态电子商务具有以下基本原则:

26、􀁺 软件资源的集成必须是松耦合形式;􀁺 软件资源的服务接口必须公开发布且可访问;􀁺 程序间的消息传递应遵守开放Internet 标准;􀁺 可通过将核心商业进程和外包软件组件/资源缝合起来,以构建应用程序;􀁺 颗粒软件资源可用性的增强将使商业进程更灵活和更个人化;􀁺 可重用的外包软件资源将为服务消费者降低成本和提高生产效率;􀁺 软件能作为服务被出售。动态电子商务的关键是Web 服务。企业的应用程序可以使用Web 服务的技术把它们封装成自描述的、自包含的模块应用。由于企业的

27、应用逻辑被封装成Web 服务,成为发布在Web 上的可重用组件。其他应用系统只要通过制定的Web 服务接口,就可以随时与这些Web 服务连接,完成企业对企业的应用集成,达到动态电子商务的目的。动态电子商务是人们思考如何获取和提供商业服务的一种新方式,它带来了巨大的利益,包括降低成本,缩短系统的安装时间,提高企业的敏捷性和灵活性。 采用动态电子商务,将使人、流程和信息之间的整合更加容易,从而缩短业务流程周期,提高了反应速度:同时,它能够为更多的应用和用户实时地提供关键数据,从而赋予企业以敏捷性和灵活性。使企业发展到“高度互联、自动化”的状态。动态电子商务实际上是能够动态适应企业不断变化的业务策略

28、的电子商务流程及相关系统。它反映了在实时条件下实现应用动态集成的概念,体现出电子商务的真正价值。具体而言,动态电子商务可以缩短因并购或资源整合而造成的业务重组的时间,从而加快面市速度并提高竞争力;同时它通过更好的可扩展性来改善客户服务质量:并且企业能够降低为取得市场竞争优势,而改变业务模式的成本,节省先期的投资。总之,在动态电子商务中,企业可以通过Web 服务重建应用和业务流程,充分利用Web服务的动态特性,在市场上抢得先机。2.2 Web服务概述既然Web 服务的出现给解决企业电子商务化过程中存在的问题的带来了新的希望。那么什么是Web 服务、Web 服务有何特点、什么情况下采用Web 服务

29、呢?下面分别对这几个问题进行阐述。2.2.1 Web 服务的概念下面就几种典型的定义阐述如下:1、Web Services,即通常所说的Web 服务,它通常是指用于架构Web服务的整体技术框架;一般提到Web 服务,就是指Web 服务技术,Web 服务是用标准的、规范的基于 XML 的WSDL 语言描述,也称为Web 服务的服务描述。这一描述囊括了与服务交互需要的全部细节,包括消息格式、传输协议和位置;Web Service 则是使用Web 服务技术而创建的应用实例。Web 服务是通过标准的Web 协议包装了一些操作(服务/过程/方法)的接口,通过标准化的XML 消息传递机制SOAP 来访问这

30、些操作的可编程访问的Web 组件。2、在2002 年1 月于旧金山召开的Web 服务“新一代Web 服务”的与会者得到的较为一致的看法认为:Web 服务应是一种基于组件的软件平台,是面向服务的Internet 应用。通过对Web 服务的构建,人们可以期望得到一个可编程的Internet。3、W3C 把Web 服务被定义为:Web 服务是一种软件开发协议(UDDI、SOAP、WSDL),由此可将Internet 及其各种表现形式(如Web、Intranet 和Extranet)变成一种可编程的信息沟通平台。综上所述,Web 服务是一种编程模型,提供在可缩放的、松耦合的和非特定平台的环境下交换信息

31、的能力,信息交换使用诸如 HTTP、 XML、SOAP 和WSDL 之类的标准协议,它是一种“自包含、自描述、组件化的应用程序”。它可以被看作是一种特殊的软件模块,能够通过标准的协议在Internet 上组装起来,完成某些功能或者执行商业流程。它是为应用程序的使用而准备,而不是为最终用户准备的,也就是说第三方可把提供的Web服务整合到他们自己的客户应用程序中去,这样便提供了一钟开发解决方案的新途径:无须在系统中设计所需要的功能,只需简单地访问适合的Web服务以执行所需要的操作即可。它通过广泛普及的Internet 使得企业能够快速的实现信息的共享和服务的复用。2.2.2 Web 服务的优点和应

32、用范围作为一种能够广泛部署在Internet/Intranet 上的新型的组件对象,Web服务利用开放标准和共同的基础设施来进行对象的描述、发现和访问,它优点和应用范围如下:1、开放的标准协议规范:作为Web 服务,其所有公共的协约完全使用开放的标准协议进行描述、传输和交换。Web 服务的协约比其他对象技术的界面规范更加规范化,而且基本上多数规范将最终由W3C 等国际标准组织作为最终版本的发布方和维护方。Web 服务是建立于基于公开开放的标准和协议之上意味着它不会由于技术的私有性而处处受到限制。而且,Web服务已经成为业界共同认定的方向。Microsoft、IBM、SUN 和 BEA 等均己为

33、Web 服务市场投人巨大的人力物力,研制出各种支持Web 服务的开发工具。2、平台的无关性:HTTP 和SOAP 等已经是互联网上通用的协议;任何与Internet 建立连接的应用程序都可以向Internet 上的任何一个Web 服务发送SOAP 消息,同时也可以接收来自WEB 服务的SOAP 消息。正是Web服务采取简单的、易理解的HTTP、SOAP 和WSDL 等标准协议作为组件接口描述和协同描述规范,完全屏蔽了不同软件平台的差异,无论是何种软件平台,都可以通过这一种标准的协议进行互操作,实现了较高的可集成性跨平台集成能力。3、高度的可集成能力和互操作性:这种特性是Web 服务所采用的规范

34、所决定的。HTTP、SOAP、WSDL 和UDDI 等标准的协议和规范完全屏蔽了不同软件平台的差异。对于企业级的应用程序开发经常都要把用不同语言写成的在不同平台上运行的各种程序集成起来,而这种集成将花费很大的开发的力量,通过Web 服务,应用程序可以用标准的方法把功能和数据暴露出来,供其它的应用程序使用,可以快速方便的进行应用程序集成。4、 松散的耦合性和良好的封装性:对象组件技术的一个基本特点就是透明性,当以个组件的实现内容发生变化后,调用它的用户不会发现其中的变化,即组件的内容对用户来说是透明的。Web 服务继承了这种优点并有了新的发展,即客户双方都可以任意的更改执行机制,而不影响另一方的

35、正常的运行,这就是松散的耦合性。一个Web 服务的实现发生变更的时候,调用者是不会感到这一点的。对于调用者来说,只要Web 服务的调用接口不变,Web 服务的实现任何变更对他们来说都是透明的,甚至是当Web服务的实现平台发生变化时,用户都可以对此一无所知。5、便捷的软件发行方式和商务集成:软件供应商可以把软件分解成若干Web 服务模块构成的系统,直接在Web 上发布软件。企业也可通过把业务软件的核心模块通过 Web 服务的形式向其合作伙伴发布,这样既保留了原有的数据和软件,又方便了彼此的商务集成。6、能应用于跨越防火墙的通信:分布式系统中的客户端和服务器之间通常都会有防火墙或者代理服务器,如果

36、使用DCOM 或CORBA 来访问Web 组件,将会被挡在防火墙外面,而使用基于SOAP 建立在HTTP 协议上的Web 服务,则不会有防火墙的问题。7 、能应用于软件的重用:Web 服务允许在重用代码的同时,重用代码后面的数据。可以使用直接调用远端的Web 服务,也可以通过Web 服务把本地的应用程序的逻辑和数据暴露出来,让其它平台上的客户重用。另一种软件重用的情况是通过使用外部厂商提供的Web 服务,开发人员利用外部厂商已经实现的功能,把好几个应用程序的功能集成起来。8、能用于应用程序集成:企业间经常都要把用不同语言写成的、在不同平台上运行的各种程序集成起来,而这种集成将花费很大的开发的力

37、量。通过Web 服务,应用程序可以用标准的方法把功能和数据暴露出来,供其它平台上的应用程序使用。9、能用于B2B 的集成:Web 服务是B2B 集成成功的关键。用Web 服务来实现B2B 集成的最大好处在于可以轻易实现互操作性。只要把你的商务逻辑暴露出来,成为Web 服务,你就可以让任何指定的合作伙伴轻松的调用你的商务逻辑,而不管他们的系统在什么平台上运行,使用的是什么开发语言。这样就大大减少了花在B2B 集成的上的时间和成本。这样的低成本让许多原本无法承受EDI 的投资成本的中小企业也能实现B2B 集成。2.3 Web服务相关协议2.3.1 SOAP协议SOAP 是在一个松散的、分布的环境中

38、通过XML 编码进行通信的一种简单的网络协议。SOAP 从本质来说,也是一种应用层协议,它往往是基于某些应用层协议来实现。它可以基于HTTP 协议,可以基于SMTP 协议.OAP 以XML 形式提供了一个简单的、轻量级的可以在分散的环境,或者是分布式的环境中点对点地交换结构化和类型化信息的一种机制。HTTP的普及和 SOAP 的简单性使用户几乎可以从任何环境调用它们,因此成为Web 服务的理想基础。SOAP 由四部分组成:􀁺 SOAP envelop (SOAP 信封),它构造定义了一个整体的表示框架,可用于表示在消息(message)中的是什么,谁应当处理它,以及这是可选的

39、还是强制的;􀁺 SOAP encoding rules (SOAP 编码规则),定义了用于表示应用定义的数据类型的编码规则;􀁺 SOAP RPC representation (SOAP RPC 表示),定义了一个表示远程过程调用和返回的约定;􀁺 SOAP binding (SOAP 绑定) 定义了一个使用底层传输协议来完成在结点间交换SOAP 信封的约定。在RPC 中使用SOAP 可通过使用HTTP 协议的SOAP 绑定来说明。 使用HTTP 作为SOAP 协议绑定媒介的情况下,一个RPC 调用可以很自然地映射到一个HTTP 请求,而RP

40、C 响应则可以映射到HTTP 响应。为实施一个方法调用,需要以下信息:目标SOAP 结点的URI;方法名;可选的方法或过程的特征;方法或过程的参数;可选的头数据。SOAP 依赖协议绑定来提供传送URI 的机制。例如,对HTTP 而言,请求URI 指明了与该调用相对应的资源。除要求该URI 是合法的以外,SOAP 对于该地址没有任何限制。RPC 和SOAP Body:RPC 调用和响应都是在SOAP Body 元素中传送。一个方法调用被建模成一个结构。该结构的名和类型可使用过程或方法的名来标识;一个方法响应被建模成一个结构。该方法响应显示为一个简单结构,每无论如何,在添加了“Response”字

41、串的方法名后,要有一个约定来命名它。RPC 和SOAP Header 对于那些并非是方法的正式调用数据部分,而是方法请求编码相关的一些额外信息,也可以在RPC 编码中表示。如果这样,它必须作为SOAP Header 元素的一个子元素来描述。所有的SOAP 消息都是以XML 的格式进行编码的,SOAP 广泛的使用了模式和命名空间,SOAP 的消息类型有三种类型:方法调用;响应消息;故障消息。方法调用是指对远程服务器上的方法调用进行的请求。方法调用中包含了所要调用的方法名称,以及调用方法所必须的参数。之后,WEB服务返回一个响应消息,该消息中带有方法调用的结果。错误消息是一种特殊类型的响应消息,如

42、果远程对象抛出一个异常或者是产生了一个错误,这样返回到客户机的就是一个错误消息。SOAP 消息由SOAP 信封(SOAP Envelope)、SOAP 头(SOAP Header)和 SOAP 主体(SOAP Body),以及关于定义它们的命名空间的信息组成,格式如图2-1 所示。头是可选的,若存在头,它传递关于 SOAP 主体中定义的请求的信息。例如,它可包括事务处理、安全、上下文或用户配置文件信息。主体包括 Web 服务请求或对 XML 格式请求的回复。图2-1 SOAP 消息的格式2.3.2 WSDL协议由于通信协议和消息格式在 Web 技术发展过程中已经达到了标准化,目前在Web 上的

43、应用已经完全接受了XML 这个基本的标准,基本上所有新出台的技术都是基于XML 标准的,二来Web 服务的目标是即时装配,松散耦合以及自动集成的,这意味着描述文档应当是具备被机器识别的能力的。也就是说,对于使用标准化的通信协议的Web 服务,它需要以某种结构化的方式(即XML)对Web 服务的调用加以描述,而且实现这一点也显得非常重要,这是Web 服务即时装配的基本保证。WSDL 正是这样一种描述语言,WSDL 定义了一套基于 XML 的 语法,将Web 服务描述为能够进行消息交换的服务访问点的集合,从而满足了这种需求。WSDL 用于描述Web 服务的调用接口,是Web 服务的核心技术之一。W

44、SDL 是定义如何用XML 语法描述Web 服务的规范,它通过在服务提供者和服务请求者之间交换的消息来描述Web 服务。WSDL 表示 Web 服务说明语言,可以认为 WSDL 文件是一个 XML 文档,用于说明一组 SOAP消息以及如何交换这些消息。WSDL 由W3C 的Web 服务 Description Working Group 负责开发、维护,经历了2003 年1 月颁布的WSDL 1.2 和WSDL 2.0(2003 年11 月颁布)这两个重要的版本,较新的3.0 草案是2004年的版本。WSDL 文档将Web 服务定义为服务访问点或端口的集合。在 WSDL中,由于服务访问点和消息

45、的抽象定义已从具体的服务部署或数据格式绑定中分离出来,因此可以对抽象定义进行再次使用。这里的消息是指对交换数据的抽象描述,而端口类型是指操作的抽象集合。用于特定端口类型的具体协议和数据格式规范构成了可以再次使用的绑定。将Web 访问地址与可再次使用的绑定相关联,可以定义一个端口,而端口的集合则定义为服务。WSDL 文件用于说明消息格式的表示法以 XML 架构标准为基础,这意味着它与编程语言无关,而且以标准为基础,因此适用于说明可从不同平台、以不同编程语言访问的Web 服务接口。除说明消息内容外,WSDL 还定义了服务的位置,以及使用什么通信协议与服 务进行通信。也就是说,WSDL 文件定义了编

46、写使用 Web 服务的程序所需的全部内容。2.3.3 UDDI协议UDDI 协议是用来描述、发现并集成Web 服务的一系列技术规范,是一套基于Web 的、分布式的、为Web 服务提供的信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web 服务注册以使得别的企业能够发现的访问协议的实现标准。UDDI 提供了一组基于标准的规范用于描述和发现服务,还提供了一组基于因特网的实现。UDDI 用于使商务应用中的实体能够方便、准确地发现并使用最佳应用软件和Web 服务,是Web 服务架构下核心的服务描述、发现和集成规范。UDDI 由OASIS(Organization for the Adv

47、ancement of Structured Information Standards, 结构化信息标准促进组织)负责开发、维护。UDDI 版本1 规范于2000 年发布,版本2 于2001 年发布。版本3 于2002 年发布。版本1 打下了注册中心的基础,版本2 则添加了企业关系等功能,版本3 解决正在进行的Web 服务开发中的重要领域内的问题,如安全性、改善了的国际化、注册中心之间的互操作性以及为进一步改进工具而对API 进行的各种改进。目前的版本是2003 年10 月颁布的3.0.1 版本。UDDI 的目的在于改进设计阶段和动态运行阶段中的服务发现,所以UDDI 项目开通了一个公共的在

48、线企业注册中心,提供了在Web 上描述并发现商业服务的框架。UDDI 通过服务注册,以及使用SOAP 访问这些注册信息的约定来实现上述目标。UDDI 的核心组件是UDDI 商业注册,它使用一个XML 文档来描述企业及其提供的Web 服务。所有的UDDI 注册中心不仅仅是一个企业和服务的注册中心,它还定义了一套数据结构及API 规范,借助UDDI,企业能够发布并搜索Web 服务,从而大大降低发布信息和寻找业务伙伴的成本,提高企业运营效率。UDDI 定义了一套统一的XML格式以描述企业与其提供的Web 服务信息。UDDI 商业注册所提供的这些信息分为三个部分:􀁺 “白页(White Page)” 包括了地址,联系方法,和已知的企业标识;􀁺 “黄页(Yellow page)”包括了基于标准分类法的行业类别;􀁺 “绿页(Green Page)”则包括了关于该企业所提供的Web 服务的技术信息,其形式可能是一些指向文件或是URL 的指针,

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

当前位置:首页 > 学术论文 > 毕业论文

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922