(计算机应用技术专业论文)web+services及其在智能大厦办公自动化系统中的应用.pdf_第1页
(计算机应用技术专业论文)web+services及其在智能大厦办公自动化系统中的应用.pdf_第2页
(计算机应用技术专业论文)web+services及其在智能大厦办公自动化系统中的应用.pdf_第3页
(计算机应用技术专业论文)web+services及其在智能大厦办公自动化系统中的应用.pdf_第4页
(计算机应用技术专业论文)web+services及其在智能大厦办公自动化系统中的应用.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(计算机应用技术专业论文)web+services及其在智能大厦办公自动化系统中的应用.pdf.pdf 免费下载

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

文档简介

摘要 w e bs e r v i c e s 为电子商务提出了一种新的分布式体系结构,其目标是解决异 构环境下应用系统的集成和互操作。它构建在诸如x m l 、s o a p 、w s d l 和u d d i 等等这些开放的,技术实现中立的标准之上。基于w e bs e r v i c e s 的电子商务应用 系统,可以跨越应用系统的对象体系、运行平台、开发语言等界限,以服务的 形式封装应用并对外发布,供用户或其它企业调用,从而形成一个基于w e b 的 服务共享平台。在行业的松散集成方面,w 曲服务具有非常好的技术优越性。 把w e bs e r v i c e s 应用到企业的i t 系统和商业流程之中,已引起了国内外企 业的高度关注,但使用w e bs e r v i c e s 多数都是基于企业内部,还没有真正推到以 i n t e r n e t 作为平台的企业间计算环境中。大厦公共服务系统是基于w e b 的智能大 厦办公自动化系统中对外的主要标志其自动化程序低,限于信息发布,难以 做到服务流程自动化。本文讨论w e bs e r v i c e s 技术在以i n t e m e t 为平台的智能大 厦办公自动化系统( o a s ) 中应用,研究了用w e bs e r v i c e s 技术来解决大厦公共 服务系统中的旅游预定服务流程自动化,并给出了其中的一个w e bs e r v i c e s 的实 例应用旅游预定服务。 本文首先在对w e bs e r v i c e s 技术构架进行介绍的基础上,详细分析了w e b s e r v i c e s 的核心技术:x m l 、s o a p 、w s d l 等。 其次,讨论了智能大厦办公自动化系统的构建平台和功能,特别对其公共 信息服务系统中的旅游预定服务的流程自动化作了深入分析。在系统设计上, 采用了基于m v c 模式的s t r u t s 框架,有效地实现了界面设计和逻辑编程的分离; 并把w 曲s e r v i c e s 应用到s t r u t s 框架中,实现服务流程自动化:在w e b 服务实 现上,采用了扩展性最强、完全开放和可插入体系结构的引擎a x i s 。 本文最后结合了以上技术,给出了一个实现实例。具体地给出开发此实例 的w e b 服务实现和集成的过程。此实例经过了测试,具有实用价值。 关键字:w e bs e r v i c e s ,智能大厦办公自动化系统,x m l ,s o a p ,w s d l a b s t r a c t w e bs e r v i c e sa r c h i t e c t u r ei san e wm o d e lo f d y n a m i cd i s t r i b u t e dc o m p u t i n g , w h i c hi s e s p e c i a l l y s u i t a b l ef o r e b u s i n e s s w h i c ha i m sa t i n t e g r a t i o n a n d i n t e r o p e r a t i o n o fa p p l i c a t i o ni nd i f f e r e n t p l a t f o r m 。i t i san e wb r e e do fw e b a p p l i c a t i o n ,b a s e d o no p e n ,i m p l e m e n t a t i o n - t e c h n o l o g y n e u t r a ls t a n d a r d ss u c ha s x m l 、s o a p 、w s d l w e bs e r v i c e si s e s p e c i a l l ys u i t a b l ef o re b u s i n e s si nt h i s a r c h i t e c t u r ea p p l i c a t i o n sa r ee n c a p s u l a t e da sw e bs e r v i c et o p u b l i s h ,w h i c hc a nb e d i s c o v e r e do ri n v o k e db yo t h e rc o n s u m e r sa n dc o m p a n i e sc r o s s i n gd i f f e r e n to b j e c t m o d e l s ,o p e r a t i n gs y s t e m sa n dp r o g r a m m i n gl a n g u a g e s ,t h u st h ew e b w i l lb e c o m ea p l a t f o r m t os h a r es e r v i c e w e bs e r v i c e sh a st h ee x c e l l e n ta d v a n t a g e si ni n c o m p a c ta n d i n t e g r a t i o n m a n yc o m p a n i e sh a v ep a ya t t e n t i o nt ot h ew e bs e r v i c ew h i c hc a l lb eu s e di n e m e r p r i s e si ts y s t e m sa n d b u s i n e s sw o r k l o w i th a sm a d e e n t e r p r i s e sh i g ha t t e n t i o n t h a ta p p l yw e bs e r v i c e st o e n t e r p r i s e si ts y s t e ma n dc o m m e r c i a lf l o w s b u tw e b s e r v i c e sm o r e a p p l i e s i n i n s i d e - e n t e r p r i s e ,t h e r e i sal a c ko f a p p l i c a t i o n i n i n t e r - e n t e r p r i s e s c o m p u t i n ge n v i r o n m e n t b a s e do ni n t e r a c t b u i l d i n g sp u b l i ci n f o r m a t i o n s e r v e rs y s t e m ( p u b i c i s s ) i st h em a i ns y m b o le x t e r n a lt o i n t e l l i g e n tb u i l d i n go f f i c ea u t o m a t i o n b a s e do uw e b i th a sl o wd e g r e ei na u t o m a t i o n ,i sl i m i t e dt or e l e a s eo fi n f o r m a t i o n ,a n dd i m c u l tt o m a k es e r v e rf l o wa u t o m a t i o n t h ep a p e r sd i s c u s s e st h ew e bs e r v i c e s a p p l i c a t i o n i n i n t e l l i g e n tb u i l d i n go a s ,a n ds t u d y t om a k es e r v e rf l o wa u t o m a t i o ni np u b l i c i s s w i t hw e bs e r v i c e st e c h n o l o g y , a n dg i v e sa l li m p l e m e n t a t i o no fw e bs e r v i c e s _ _ _ _ _ _ _ t r a v e l i n g r e s e r v a t i o ns e r v e r f i r s t l y , t h ep a p e r s i n t r o d u c e sa r c h i t e c t u r eo fw e bs e r v i c e s ,a n d p a r t i c u l a r a n a l y z et h ec o r et e c h n o l o g yo f w e b s e r v i c e ss u c ha sx m l 、s o a p 、w s d l s e c o n d l y ,t h ep a p e r s d i s c u s s e so v e r a l lf r a m ea n df u n c t i o n so fi n t e l l i g e n t b u i l d i n g o f f i c ea u t o m a t i o n s y s t e m ,e s p e c i a l l ya n a l y z e s f l o wa u t o m a t i o no f p u b l i c i s s m v c b a s e dw e b d e s i g np a t t e r ni sa d o p t e d t od e s i g nt h ew h o l es y s t e m i t e f f e c t i v e l ys e p a r a t el o g i cp r o g r a m m i n gf r o mi n t e r f a c ed e s i g n m o r e o v e r , t h es y s t e m c o m b i n e sw e bs e r v i c e st os t r u t sf l a m e i nr e a l i z a t i o no fw e bs e r v i c e s ,t h es y s t e m m a k eu s eo f a x i sw h i c hi sm o s te x t e n s i b l ea n d c o m p l e t e l yo p e n e ds o a pe n g i n e l a s t l y , t h ep a p e r sg i v ea ni m p l e m e n t a t i o no fe x a m p l ew i t ha b o v et e c h n o l o g y , a n d c o n c r e t e l yg i v et h ep r o c e s so f w e b s e r v i c e s i m p l e m e n t a t i o na n di n t e g r a t i o n t h e e x a m p l ep a s s e dt e s t i n g ,h a su s a b l ev a l u e k e y w o r d s :w e b s e r v i c e s ,i n t e l l i g e n tb u i l d i n go f f i c e a u t o m a t i o ns y s t e m ,x m l s o a p ,w s d l 武汉理工大学硕士学位论文 第一章引言 1 1w e b s e r v i c e s 特点与发展现状 分布式对象计算技术,为实现应用的可移植性、可扩展性和可重用性提供 了解决的途径。其中有三大技术标准:c o r b a 、d c o m 、j a v ar m i 。这三种 分布式体系结构主要应用于企业内部,不适用于不对等的体系结构之间的通 信。实际中,c o r b a 和d c o m 已在各种平台上得到了实现,但建立在这两个 协议之上的解决方案会因为厂商的不同而不同。例如:要开发一个d c o m 应用 程序,分布式应用程序中所有的参与节点都必须以w i n d o w s 风格运行。这两种 协议都依赖于严格管理的环境,要想在外部成功地找到能调用d c o m 或 c o r b a 的任意两台计算机的几率较小。另外它们在客户机对服务器通信方面 都存在较大的缺陷,尤其是当客户机遍布因特网时,缺陷更加明显。这些传统 的分布式对象计算技术一直是一个紧耦合问题,调用远程网络的应用程序通过 自己发出的函数调用和请求的参数与远程网络紧密地联系在一起;在大多数系 统上,采用固定接口,对于环境或需要的改变,缺乏灵活性或适用性。软件业 已认识到:跨多个操作系统、编程语言和硬件平台集成软件的应用程序不可能 由任何一个专门的环境来解决【l 孤。为解决这些问题,w 曲s e r v i c e s 这一新的分 布式计算模型便应运而生。 w e bs e r v i c e s 是创建可互操作的分布式应用程序的新平台。w 曲s e r v i c e s 的 主要目标是跨平台的应用程序的可互操作性。w e bs e r v i c e s 构件技术完全独立于 平台、独立于软件供应商的标准。与目前其他的的分布式构件技术不同,w e b s e r v i c e s 不是通过专用的对象模型协议( 如d c o m 、r m i 或i i o p ) 访问。它采用 基于文本格式的x m l ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标志语言) 表示 数据和描述数据。w e bs e r v i c e s 使应用程序可以用与平台无关和与编程语言无关 的方式进行相互通信,之所以如此,其关键在于使用了基于x m l 的接口和通 信技术。它构建于x m l 和基于x m l 的技术s o a p ( s i m p l eo b j e c t a c c e s s p r o t o c o l ,简单对象访问协议) 、w s d l ( w e bs e r v i c e sd e s c r i p t i o n l a n g u a g e , w e b 服务描述语言) 和u d d i ( u n i v e r s a ld e s c r i p t i o n ,d i s c o v e r y a n di n t e g r a t i o n ) 等等这些开放的,技术实现中立的标准之上。 武汉理工大学硕士学位论文 w e b 服务秉承了x m l 语言的优势。它具有如下特点:互操作性,让任何 平台上的用任何语言编写的服务进行交互:松耦合,每当其中某个或多个服务 在设计或实现中发生变更时,服务应用程序之间的交互作用可不会因此而中 断:使现有的应用程序能适应变化中的业务条件和客户需要,向现有或原有的 软件应用程序提供服务接口,丽无需改变原来的应用程序,从而使这些应用程 序完全可以运行在这种服务环境下;引入其它一些与原有功能无关的管理或操 作管理功能,譬如可靠性、可计帐性和安全性等等,从而在业务计算环境中增 加了其通用性和实用性。正是有了这些特点,w e bs e r v i c e s 应用范围很广,可应 用在以下几个方面:应用程序集成、b 2 b ( b u s i n e s st ob u s i n e s s ) 集成、代码和 数据重用,以及通过w e b 进行客户端和服务器的通信的场合【7 旺 w 曲s e r v i c e s 具有如此多的优点,它一出现,立即成为i t 行业研究的焦 点。各种有关w e bs e r v i c e s 的标准、开发工具与平台竞相出现。 ( 1 ) w e bs e r v i c e s 标准发展现状【2j 。一系列基于x m l 的标准:w s d l 、 u d d i 、s o a p 、w s f l 等标准被业界广泛接受,成为事实上的标准。许多人把 w 曲s e r v i c e s 特指为用w s d l 描述的、通过h t t p 发送的、处理x m l 编码的 s o a p 消息的分布式服务,并且这种结构正得到广泛的部署。同时,这些标准 本身还在继续完善和发展。i b m 、m i c r o s o f t 等大公司为了使自己平台中的w 曲 s e r v i c e s 标准具有生命力,联合创立了w 曲服务互操作性组织( w e bs e r v i c e s i n t e r o p e r a b i l i t yo r g a n i z a t i o n ,w s i ) 一个制定标准的组织。还有许多新兴 的w e b 服务标准和通过这些标准的组织,同时有针对这些开发标准的实际的开 放源码方法。几乎没有人知道这些标准的未来方向:哪些标准今后我们会经常 使用,哪些标准经过时间和实践将会遗弃,这些使应用者困惑。为了不在这个 诱人的领域被抛弃,i t 行业中的很多组织( 如i b m 、m i c r o s o f t ) 也尽力使其工 具和平台中使用的标准获得众多权威机构( 如w 3 c 、o a s i s 等) 的承认。 ( 2 ) 开发工具和开发平台现状。w e bs e r v i c e s 主要构架在n e t 平台和j 2 e e 平台上。n e t 阵营以微软为主。j 2 e e 以s u n 、i b m ,b e a 、o r a c l e 等为主 要支持者。 w 曲s e r v i c e s 引起了国内外企业的高度关注。对w e bs e r v i c e s 特别兴趣的是 一些银行和金融服务机构。这些企业的业务系统很早就采用i t 技术,而且重要 的业务数据都存储在一些应用早期计算机语言开发的应用系统中。当这些企业 武汉理工大学硕士学位论文 推出新的业务、新的平台时,如何使这些数据在新老系统中进行交互使用就成 了最大的难题。w e bs e r v i c e s 正可解决这样的难题。 对w e b 服务技术特别感兴趣的企业还有旅游、交通、零售及电信通信行业 的企业。这些行业的应用特点是它们拥有众多的分支机构,而且这些分支机构 的地域分布很分散。在这些行业的松散集成方面,w e b 服务具有非常好的技术 优越性。另外,对w e b 服务感兴趣的行业还包括医疗机构、公共事业、政府和 制造业等。 但是由于如前所述的标准、平台和工具以及技术还处于发展期大部分企 业对w e b 服务技术的应用还处于小心求证阶段。调查资料显示,从企业对w e b 服务技术的应用和接受程度来看,将w e b 服务作为技术领先手段的企业占 1 0 ;将w e b 服务应用于业务刨新的企业占1 5 ;对w e b 服务注重实施的企业 占2 5 :对w e b 服务还在小心求证的企业占4 0 :对w e b 服务还比较怀疑的 企业占1 0 。而且目前企业使用w e b 服务多数都是基于企业内部,还没有真正 推到以i n t e m e t 作为平台的企业间计算环境中 2 1 。 1 2w 曲s e r v i c e s 应用研究意义 被业界称为计算机i t 技术的第三次革命( 继p c 和i n t e m e t 之后) 的w e b s e r v i c e s 技术已经逐步显露出巨大商业机会,软件业因此正在酝酿一场巨变。 这将是自从w w w 问世以来这个产业所面临的一次最大规模的”洗牌”,酝酿着 巨大的商业机会,商业机会的实现,需要依靠技术和应用模式的双重保障。 w e bs e r v i e e s 技术的发展将促使w e bs e r v i c e s 应用的成熟和完善,而w e b s e r v i c e s 应用模式将为商业应用提供指引,并促进商业应用的普及。因此,国 内外i t 行业都很重视对它的应用模式的研究,以便抢占市场、在“洗牌”中胜 出。但它还属于一种新技术,很不完善,在标准、安全、管理和实践应用方面 尚在实验阶段,有待实践检验。它的架构、技术标准、应用模式都由国外率先 提出,目前国外大公司成为w e bs e r v i c e s 技术的领头羊,我国对w e bs e r v i c e s 的 技术应用十分重视,每年都举办w e b 服务研讨会以促进其在国内的发展, 以 缩小我们和世界领先企业的技术差距。因此研究如何把w e bs e r v i c e s 应用到以 i n t e m e t 为平台的企业间计算环境中来,通过应用w e bs e r v i c e s 的实践,为企业 使用w e bs e r v i c e s 提供框架式的解决方案具有现实意义j 。 3 武汉理工夫学硕士学位论文 1 3 本论文的研究目标和技术线路 本论文的研究目标就通过对w e bs e r v i c e s 核心技术的研究,通过从设计到 实现智能大厦办公自动化系统( o f f i c ea u t o m a t i o ns y s t e m ,o a s ) 中的w 曲服务 的实现研究,将w e b 服务应用于开放的规范框架j 2 e e 平台,为在j 2 e e 中使用 w e bs e r v i c e s 、实现应用组件集成提供框架式的应用模式;同时,使甩w e b s e r v i c e s 为智能大厦o a s 中的旅游预定服务实现服务全程在线化、自动化也是 本文要达到的研究目标。 本论文中智能大厦o a s 是一个基于i n t e m e t 的应用系统,采用基于j 2 e e 的 分布式多层结构体系。所有功能都是通过w e b 服务提供者、应用服务器和用户 浏览器之间的交互来完成的。部分数据由数据库服务器来维护和组织,另外 一部分数据通过调用远程w e b 服务响应而来。在这个具体的应用系统中使用了 基于m v c 模式的s t r u t s 框架,在这个框架中加入了一个w e b 服务管理层,专 为提供和集成w e b 服务提供管理功能:在w e b 服务引擎方面,使用了可扩展 的、完全开放的和可插入的体系结构a p a c h e a x i s 。 1 4 本论文的组织 本论文的组织以w e bs e r v i c e s 为主线,论述了w e bs e r v i c e s 的结构模式、 核心技术、w e b 服务引擎a x i s 结构和s o a p 消息处理,通过研究智能大厦 o a s 的功能结构和开发平台,分析了该系统中的w e bs e r v i c e s 应用,并给了旅 游预定服务模块中的w e b 服务的实例实现。 本文共分五章。 第一章为引言,概括性的介绍w e bs e r v i c e s 的概念、技术及特点。并对 w e b 服务的发展现状、发展方向进行了分析讨论。最后给出了本文的研究目标 和组织。 第二章较为详细的分析了w e bs e r v i c e s 结构,重点分析了x m l 、s o a p 和 w s d l 的一些核心特征,这三者是w e b 服务消息传递、服务调用和服务描述的 事实标准,也是理解、创建和使用基于a p a c h e a x i s 的w e b 服务的基础。 武汉理工大学颈士学位论文 第三章对智能大厦o a s 的功能、设计框架s t r u t s 进行了分析,详细论述了 其中的w e b 服务及其引入w e b 服务后的框架,研究了旅游预定服务模块中需 要的w 曲服务。 第四章详细介绍了智能大厦o a s 中的旅游预定服务模块中w e b 服务的定 义、发布、定位和调用的具体实现。使用了a x i s 的w e b 服务应用于系统作了 深入的研究。包括系统分析与总体设计,基于a x i s 的系统中的服务开发与调用 的实现,系统中与w e b 服务调用有关模式的详细设计。本章中特别的把w e b 服务应用到了s t r u t s 框架中,结合了二者的优点。 第五章为全文的总结和进一步研究的展望。 武汉理工大学硕士学位论文 第二章w e bs e r v i c e s 的基本原理 2 1w 曲s e r v i c e s 结构 在研究w e bs e r v i c e s 的应用时,对w e bs e r v i c e s 结构的深刻理解是非常重 要的。w e bs e r v i c e s 结构是构建和部署w e bs e r v i c e s 应用程序的框架,它描述了 组成w 曲s e r v i c e s 的组件的宏观的物理的或逻辑的关系,包括由哪些组件组 成,实现组件的技术,各组件的地位和作用,组件间有何关系,组件间的通信 和协同工作机制。下面就从w e bs e r v i c e s 的模型、协议栈、w e bs e r v i c e s 的结构 体系来理解w e bs e r v i c e s 。 2 1 1w e bs e r v ic e s 模式 w e bs e r v i c e s 具有在完全不同平台之间的互操作性,在无所不在的网络技 术上调用一种w e b 服务( 即w e bs e r v i c e ,注意此处的s e r v i c e 与前面的s e r v i c e s 是 不同的概念,复数的w e bs e r v i c e s 表达的是整个结构,但w e bs e r v i c e 只是整个 结构的一个部分) 的能力,这种能力首行体现在其模式上。 其模式4 1 5 1 如图2 1 。 圈2 - - 1w e bs e r v i c e s 模式 w e bs e r v i c e s 基于三种角色( 服务提供者、服务注册中心和服务请求) 之 间的交互。交互涉及发布、查找和绑定操作。这些角色和操作一起作用于w e b s e “i c e s 构件:w e b 服务软件模块及其描述。在典型情况下,服务提供者托管于 通过网络访问的软件模块( w 曲服务的一个实现) 。服务提供者定义w e b 服务 武汉理工大学硕士学位论文 的服务描述并把它发布到服务请求者或服务注册中心。服务请求者使用查找操 作来从本地或服务注册中心检索服务描述,然后使用服务描述与服务提供者进 行绑定并调用w e b 服务实现或同它交互。服务提供者和服务请求者角色是逻辑 结构,因而服务可以表现两种特性。图2 1 中图示了w e bs o r v i c e s 模型的操 作、提供这些操作的组件及它们之间的交互。 1 w e bs e r v i c e s 中的角色 服务提供者。从企业的角度看,这是服务的所有者。从体系结构的角度 看,这是托管访问服务的平台。 服务请求者。从企业的角度看,这是要求满足特定功能的企业。从体系结 构的角度看,这是寻找并调用服务,或启动与服务的交互的应用程序。服务请 求者角色可以由浏览器来担当,由人或无用户界面的程序( 例如,另外一个 w e b 服务) 来控制它。 服务注册中心。这是可搜索的服务描述注册中心,服务提供者在此发布服 务描述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服 务的绑定信息( 在服务描述中) 。对于静态绑定的服务请求者,服务注册中心 是体系结构中的可选角色,因为服务提供者可以把描述直接发送给服务请求 者。同样,服务请求者可以从服务注册中心以外的其它来源得到服务描述,例 如本地文件、f t p 站点、w e b 站点等。 2 w e bs e r v i c e s 中的操作 对于利用w 西服务的应用程序,必须发生以下三个行为:发布服务描 述、查询或查找服务描述以及根据服务描述绑定或调用服务。这些行为可以单 次或反复出现。这些操作具体为: 发布。为了使服务可访问,需要发布服务描述以使服务请求者可以查找 它。发布服务描述的位置可以根据应用程序的要求而变化。 查找。在查找操作中,服务请求者直接检索服务描述或在服务注册中心中 查询所要求的服务类型。对于服务请求者,可能会在两个不同的生命周期阶段 中牵涉到查找操作:在设计时为了程序开发而检索服务的接口描述,而在运行 时为了调用而检索服务的绑定和位置描述。 绑定。最后需要调用服务。在绑定操作中,服务请求者使用服务描述中的 绑定细节来定位、联系和调用服务,从而在运行时调用或启动与服务的交互。 3 w e bs e r v i c e s 的构件 武汉理工大学硕士学位论文 ( 1 ) 服务。在这里,w e b 服务是一个由服务描述来描述的接口,服务描述 的实现就是该服务。服务是一个软件模块,它部署在由服务提供者提供的可以 通过网络访问的平台上。服务存在就是要被服务请求者调用或者同服务请求者 交互。当服务的实现中利用到其它的w e b 服务时,它也可以作为请求者。 ( 2 ) 服务描述。服务描述包含服务的接口和实现的细节。其中包括服务的 数据类型、操作、绑定信息和网络位置。还可能包括可以方便服务请求者发现 和利用的分类及其它元数据。服务描述可以被发布给服务请求者或服务注册中 心 2 1 2 w e bs e r v ic e s 服务协议栈 w e bs e r v i c e s 要以一种可互操作的方式执行发布、发现和绑定这三个操 作,必须有一个包含每一层标准的w 曲服务协议栈【5 1 6 1 。图2 2 展示了一个概 念性w e b 服务协议栈。上面的层建立在下面几层提供的功能之上。垂直的条表 示在协议栈中每一层必须满足的需求。左面的文本表示协议栈的那一层所应用 的标准技术。 圈2 - 2w e bs e r v i c e s 协议 1 网络层:w e b 服务协议栈的基础,w e b 服务要被服务请求者调用,就 必须是可以通过网络访问的。该层可是任意网络协议:h t t p 、f t p 、s m t p 、 消息排队( m e s s a g eq u e u i n g ) 、因特网o r b 间协议( i n t e r n e ti n t e ro r b p r o t o c o l 。i i o p ) 上的远程方法调用( r e m o t em e t h o di n v o c a t i o n ,r m i ) 、电子 邮件等等。在任何给定的情况下使用的网络协议都依赖于应用程序需求。因特 网上的w e b 服务使用普遍部署的网络协议h t t p ,w e b 服务还可以支持其它因 特网协议,包括s m t p 和f t p 。对于内部网中提供和使用的w e b 服务,使用另 武汉理工大学硕士学位论文 外的网络技术也会被认同,内部网域可以使用可靠消息传递和调用基础结构, 如m q s e r i e s 和c o r b a 等等。也可根据其它需求选择网络技术,例如安全性、 可用性、性能以及可靠性。 2 x m l 消息层:这一层指定了应用程序通信所使用的消息格式。s o a p 已成为w e bs e r v i c e s 中x m l 消息格式的事实标准。s o a p 是w 3 c 组织提出, 基于i n t e m e t 的简单对象访问协议。s o a p 是一种有线协议,类似于c o r b a 的 i i o p 。d c o m 的o p r c 或j a v a 的r m i 。但i i o p 、o p r c 和i t m i 都是居于平台 的二进制协议,s o a p 则是以髓自描述、自扩展的x m l 文本为基础。所有的 s o a p 消息都使用x m l 形式编码。使得s o a p 建立在跨平台的数据交换技术之 上。是一种轻型的简单协议,该协议并没有企图指定编程的模式或实现特殊的 a p i 。具有许多的优点:不与任何传输协议捆绑在一起,它既可与h t t p 捆 绑,也可与s m t p 和f t p 捆绑:很容易扩展;能通过防火墙等。 3 服务描述层:实际上是描述文档的一个协议栈。w s d l 是基于x m l 的 服务描述的真正标准,它是支持可互操作的w e b 服务所需的最小标准服务描 述,w s d l 定义了服务交互的接口和结构,要指定业务环境、服务质量和服务 之间的关系,我们还需要另外的描述。w s d l 文档可以由其它服务描述文档来 补充,从而描述w 曲服务的这些更高级的方面。例如,描述业务环境除了使用 w s d l 文档,还要使用u i ) d i 数据结构。w e b 服务流程语言( w e bs e r v i c e s f l o wl a n g u a g e ,w s f l ) 文档中则描述了服务组成和流程。 因为w e b 服务被定义为可以通过s o a p 从网络进行访问,并由服务描述 表示,所以w e bs e r v i c e s 协议栈中的前三层需要提供或使用w e b 服务。最简单 的协议栈将包括网络屡的h t t p 、x m l 消息传递层的s o a p 协议以及服务描述 层的w s d l 。所有企业间或公用w e b 服务都应该支持这种可互操作的基础协议 栈。 4 服务发布和服务发现,可以用多种解决方案来实现。 w e b 服务的发布包括服务描述的生成和之后的发布。发布可以使用各种不 同机制。最简单、最静态的就是直接发布,提供者直接向服务请求者发送 w s d l 文档,直接发布对静态绑定的应用程序来说很有用。另外,服务提供者 还可以将描述服务的文档发布到主机本地w s d l 注册中心、专用u d d i ;窭册中 心或u d d i 运营商节点。 9 武汉理工大学硕士学位论文 服务发现依赖于服务发布,w e b 服务如果没有被发布就不能被发现。该层 的各种发现机制和一组发布机制互相平行。最简单、最静态的发现的示例是静 态发现,其中服务请求者从本地文件获取w s d l 文档。这通常都是通过直接发 布获取的w s d l 文档,或者前面查找操作的结果。另外,也可以通过使用本地 w s d l 注册中心、专用u d d i 注册中心或u d d i 运营商节点在设计时或运行时 发现服务。 要使w 曲服务应用程序满足当今电子商务的迫切需求,就必须提供企业 级基础结构,包括安全性、管理和服务质量。这几个垂直条在协议栈的每一层 都必须得到解决。每一层的解决方案可以彼此独立。随着w e b 服务范例的采 用和发展,将会出现更多此类垂直条。 该协议栈的最下面三层表示基础w e b 服务协议栈,它们相对于协议栈中 上面层来说更成熟,也更标准。最下面三层确立了保证一致性和互操作性的技 术,使w e b 服务能够利用现有的因特网基础结构,这使w e b 服务进入普遍存 在的环境的成本非常低。灵活性并不会因为互操作性需求而有所降低,因为我 们可以为选择性和增值的技术提供另外的支持。例如,我们必须支持h t t p 上 的s o a p ,但也可以同时支持m q 上的s o a p 。w e b 服务的成熟和采用将会带 动协议栈中上面几层和垂直条的开发和标准化。 2 2w e bs e r v i c e s 的基石一x m l w e bs e r v i c e s 具有与以前的分布式技术不可比拟的互操作性与集成,其关 键在于使用了:x m l 的数据编码,x m l 模式的数据规范,基于x m l 标准的 各种技术。 x m l 是用来对信息进行描述而设计的一种新语言。它以文本方式表示结 构化和半结构式信息,并成为事实标准。具有如下重要特征和优点一j : ( 1 ) 具有自描述性。 ( 2 ) x m l 文档容易编写,设计正式且简洁可读性强。 ( 3 ) 提供了结构化数据表示方法。x m l 可以用真正与平台无关的方式来描 述任何数据,以跨系统交换数据。 ( 4 ) 具有可扩展性。x m l 让使用者创建和使用他们自己的标记而不是仅限 于使用有限词汇表。 墨堡墨三查兰堕主兰垡笙兰 ( 5 ) x m l 采用u n i c o d e 字符编码系统,可以支持世界范围上几乎所有的主 要语言,并且不同语言的文本可以在同文档中混合使用。 只要应用程序都支持x m l 词汇,就能在应用程序之间无缝地交换数据。 x m l 以开放性、标准性和简便性得到了迅速的推广,改变了基于i n t e m e t 应用 程序的开发模式。 2 2 1 x m l 文档与x m ls c h e m a 1 x m l 文档 x m l 技术有二个应用领域。一种是以表示文字为中心的应用;另一种是 以表示数据为中心的应用,如购买订单。w e bs e r v i c e s 中使用的是以数据为中心 的) 跚l 。 清单2 1 就是一个以x m l 描述的顾客预定旅游线路订单: 清单2 1 r e s e r v e x m l 。 j o n e m a l e 4 2 0 0 19 - x e 0 2 7 - 6 6 6 6 6 6 1 2 3 4 5 5 a - 1 0 0 以上x m l 文档由二部分组成:序言( 可选) 和根元素。序言一般有二个作 用:标识该项文档是x m l 文档,包含该文档的元信息,其中应使用一条标准 处理指令x m l 声明以便确定文档中的x m l 的版本和字符编码,如 武汉理工大学硕士学位论文 。根元素,它包含文档中所有文本和所 有其它元素,如p o ,可有多个根元素。 “元素”是x m l 文档中起始和结束标记成对出现的一个技术名字,这二 个标记之间的一切是元素的内容。内容可包含嵌套的元素、注释、正文等。预 定订单由一个主元素p o 和子元素c u s t o m e r 和r o u t e r i d 组成。这些子元素可包括 其他子元素等,如c u s t o m e r 由n a m e 等五个子元素组成。直到一个像n a m e 这 样的子元素,它包含的是一个正文而不是任何子元素。元素如果包含子元素或 者是带有属性则被称为复合类型:反之元素如果仅仅包含数字、字符串或者其 他数据等,但不包含任何子元素则称为简单类型。 元素的起始标记可以具有零个或多个属性。如 标记中有属性s u b m i t t e d ,其值为“2 0 0 3 1 2 0 5 ”。 x m l 文档的一个重要性质是它们可以组合以创建新文档。但简单组合往 往会引起识别和冲突问题。x m l 名称空间就是解决这个问题的方法,它给 x m l 文档构件指派唯一名字使得软件能够正确地运行并避免冲突,给元素赋上 下文使元素在不同上下文中保持唯一的名字。 从例子可看出,此文档所表示的数据相当于关系数据库中某个表的一行 ( 记录值) 。那么此文档中数据结构在哪儿定义呢,如p o 元素中所包含的子元 素只能是c u s t o m e r 和r o u t e r i d 、属性只能是日期型数据,c u s t o m e r 只能包含 n a n l e 等这五个元素。答案与关系数据库中类似,用模式来描述元素的结构,控 制文档内的结构和内容关系。元素的结构又称元素的元信息。 w 3 c 制定的x m ls c h e n m ( x s d ) 就是专门解决x m l 文档结构描述的一套 标准。它是以x m l 文档自然地表达x m l 文档模式的一个更为丰富的元语言, 这种x m l 文档又称为模式文档,被表达结构的文档又称为实例文档【l 。 2 x m ls c h e m a x m ls c h e m a 元语言中以x m l 表达实例的模式,用名字空间来区分模式 定义中的元素与实例中的元素。在模式文档中,所有属于模式规范的元素都冠 以前缀x s d :,这个前缀与名字空间:h a p :h w w w w e o 叫2 0 0 1 x m l s c h e m a 相关 联( 此名字空间标识了w 3 c 推荐的x m l 模式规范) 。所有属于实例中的元素 模式与一自定义名字空间( 目标名称名字空间) 相关联。 武汉理工大学硕士学位论文 模式文档也是由二部分构成:序言与根元素。模式文档的根元素是 x s d :s c h e m a 。根模式元素的内容将是其他的模式元素,它们用来作为实例文档 元素、属性的结构定义【2 l 】 2 2 1 2 7 1 。 清单2 2 清单2 1 的模式文档p o x s d : x s d :e l e m e n tn a m e 2 ”p o ”t y p e 2 p o :r e s e r v e o r d e r t y p e ”胁 x s d :e l e m e n tn a m e = ”c u s t o m e r ”t y p e = ”p o :c u s t o m e r ”b x s d :p a t t e mv a l u c = d 6 一【a - z 】 2 ) ”胁 x s d :e l e m e n tn a m e = ”p h o n e ”t y p e 2 ”x s d :s t r i n g ”房 在此清单中,在s c h e m a 元素结束之前,首先定义了一个类型c u s t o m e r , 它由元素n a l t l e 等等组成。这种类型定义的一个结果是c u s t o m e r 类型必须包含 在该模式文档的目标命名空间:然后,我们定义类型r e s e r v e o r d e r t y p e ,这个 类型由元素c u s t o m e r 等等组成。p u r c h a s e o r d e r t y p e 也包括在模

温馨提示

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

评论

0/150

提交评论