




已阅读5页,还剩68页未读, 继续免费阅读
(计算机应用技术专业论文)基于web+service的企业应用集成的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着信息技术的不断发展,传统的企业应用集成技术和方法造成各个系统 之间的紧耦合的状态,已经不能适应企业的系统升级和整合的需要。另外传统 的企业应用集成主要是实现企业内部的信息共享和流通,对于企业间的应用集 成的支持较差,无法适应日益增长的电子商务要求和极端多变的异构网络平台。 基于x m l 的w e bs e r v i c e 技术是这些年来发展非常迅猛的技术,被誉为第 三次信息技术革命。w e bs e r v i c e 利用基于x m l 格式的s o a p 消息进行数据交 换,采用w s d l 文档描述接口,通过u d d i 注册中心发布服务和查找服务,从 而实现了业务功能的松散集成。这些特性对于在企业之间和企业内部通过w e b s e r v i c e 连接业务功能是非常理想的。w e bs e r v i c e 技术以其协议的通用性、完全 的平台无关性和语言无关性,能够弥补传统企业应用集成技术的不足之处。 本文在分析传统企业应用集成技术的基础上,利用j 2 e e 技术,研究基于 w r e bs e r v i c e 的企业应用集成,提出了一个基于w e bs e r v i c e 的企业应用集成框 架,实现了一个可供多用户调用的基于a p a c h ea x i s 的w e b 服务。具体的说, 本文的主要工作可以归纳为以下几点:首先,分析了当前企业应用集成普遍存 在的问题,根据e a i 的特点及其类型,剖析了w e bs e r v i c e 技术与传统的e a i 技术相比所具有的优势。其次,研究和探讨了w e bs e r v i c e 技术,以及与之密切 相关的x m l 、s o a p 、w s d l 、u d d i 等技术。再次,在理论分析的基础上,提 出了基于w e bs e r v i c e 分别进行组件通信、企业内部应用集成和企业间应用集成 的框架。然后,利用j 2 e e 技术,在基于a p a c h ea x i s 的开源框架上实现了一个 w e bs e r v i c e 实例。最后对本文做了一些总结,评价和展望。 希望本文能够提供有价值的观点和建议,对国内w e bs e r v i c e 的研究和应用 在理论和实践上都有积极的参考价值。 关键词:企业应用集成,w e bs e r v i c e ,x m l , s o a p a b s t r a c t w i t ht h ed e v e l o p m e n to fi n f o r m a t i o nt e c h n o l o g y , t h et r a d i t i o n a le a it e c h n o l o g y c a n n o tm e e tt h er e q u i r e m e n to fe n t e r p r i s es y s t e mu p g r a d ea n dd e v e l o p m e n td u et o c o m p a c tc o u p l i n ga m o n ge n t e r p r i s ea p p l i c a t i o ns y s t e m s b e s i d e s ,t h et r a d i t i o n a le a i t e c h n o l o g ym a i n l ye m p h a s i z e so ni n f o r m a t i o ns h a r i n ga n dc o m m u n i c a t i o ni n s i d et h e e n t e r p r i s ew h i l es u s t a i n sa p p l i c a t i o ni n t e g r a t i o na m o n ge n t e r p r i s e sp o o r l y , w h i c h c a n n o tf i tf o rt h ee x t r e m e l yi n c r e a s i n gd e m a n do fe ca n dh e t e r o g e n e o u sn e t w o r k e n v i r o n m e n t t h ew e bs e r v i c et e c h n o l o g yb a s e do nx m li saf a s td e v e l o p i n gt e c h n o l o g y t h e s ey e a r s ,w h i c hi sr e g a r d e da st h et h i r di n f o r m a t i o nt e c h n o l o g ye v o l u t i o n w e b s e r v i c eu s e ss o a pm e s s a g e sb a s e do nx m lf o r mt oc a r r yo nd a t ae x c h a n g e ,u s e s w s d lf i l e st od e s c r i b et h ei n t e r f a c e s ,i s s u e sa n df i n d so u ts e r v i c et h r o u g hu d d i r e g i s t r a t i o nc e n t e r , t h u sr e a l i z e st h el o o s ei n t e g r a t i o no fb u s i n e s sf u n c t i o n t h e s e c h a r a c t e r i s t i c sa r ev e r yi d e a lf o rc o n n e c t i n gb u s i n e s sf u n c t i o nt h r o u g hw e bs e r v i c e a m o n ga n di ne n t e r p r i s e s w i t hc h a r a c t e r i s t i c so fp r o t o c o lc u r r e n c y , p l a t f o r m i n d e p e n d e n c ya n dl a n g u a g ei n d e p e n d e n c y , w e bs e r v i c ew i l lf e t c hu pt oe a i o nt h eb a s i so fa n a l y z i n gt h o s et r a d i t i o n a le a is o l u t i o n s ,t h i st h e s i ss t u d i e st h e e a ib a s e do nw e bs e r v i c eu s i n gn e wj 2 e e t e c h n o l o g y , p r o p o s e sa ne a if r a m e w o r k b a s e do nw e bs e r v i c e ,a n di m p l e m e n taw e bs e r v i c ee x a m p l eb a s e do na p a c h ea x i s s p e c i f i c a l l y , t h em a i nw o r k si nt h i st h e s i sc a nb ei n c l u d e da sb e l o w :f i m t l y , a n a l y z i n gt h ec o m m o ni s s u e se x i s t i n gi nt h ec u r r e n te a is o l u t i o n s ,a c c o r d i n gt ot h e c h a r a c t e r i s t i c sa n dt y p e so fe a i ,a n a t o m i z i n gt h e a d v a n t a g e so fw e bs e r v i c e c o m p a r e dw i t ht h et r a d i t i o n a le a it e c h n o l o g y s e c o n d l y , r e s e a r c h i n ga n dd i s c u s s i n g t h et e c h n o l o g yo fw e bs e r v i c e ,a n da l s od i s c u s s i n go t h e rt e c h n o l o g i e si n v o l v e ds u c h a sx m l , s o a p , w s d la n du d d i t h i r d l y , b a s e do nt h e o r ya n a l y s i s ,c o m i n gu p w i t haf r a m e w o r kt h a tw e bs e r v i c ei sa p p l i e dt om o d u l ec o m m u n i c a t i o n ,a p p l i c a t i o n i n t e g r a t i o ni n s i d ee n t e r p r i s ea n da p p l i c a t i o ni n t e g r a t i o na m o n ge n t e r p r i s e s f o u r t h l y , u s i n g j 2 e et e c h n o l o g y , b a s e do no p e ns o u r c ef r a m e w o r ka p a c h ea x i s ,d e v e l o p i n g a ne x a m p l eo fw e bs e r v i c e f i n a l l y , m a k i n gs o m es u m m a r i e s ,s o m ea p p r a i s a l sa n d p r o s p e c t st ot h er e s e a r c hw o r ko ft h i st h e s i s i i w ew i s ht h i st h e s i sw o u l dp r o v i d ev a l u a b l ev i e w p o i n t sa n ds u g g e s t i o n s ,a n db e b e n e f i c i a lt od o m e s t i cs t u d i e sa n da p p l i c a t i o n so fw e bs e r v i c e k e yw o r d s :e a i ,w e bs e r v i c e ,x m l ,s o a p i i i 此页若属实请研究生及导师签名,并装订在学位论文的摘要前。 独创性声明 本人声明,所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成 果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得武汉理工大学或其它教育机构的学位或证书而使 用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明确的说 明并表示了谢意。 研究生( 签名) :乐凌幽日期幽= 竺:! : 关于论文使用授权的说明 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即:学校有权保留送 交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部内容,可以采用影 印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) c :社州蚴:辑一 日期厉哆苫铲 武汉理- t 大学硕十学位论文 1 1 研究背景和目标 第1 章绪论 随着信息技术的不断发展,越来越多的企业实体将自己的业务模式由传统 方式转为i n t e r n e t 方式,部署在w e b 上的应用已深入人心。无法想象,一个企 业如果没有基于i n t e r n e t 的企业应用系统,它将会怎样在当今的商业竞争中立于 不败之地。当w e b 应用走入我们日常生活的同时,人们发现w e b 应用与企业内 部系统,比如e r p ( e n t e r p r i s er e s o u r c ep l a n n i n g ,企业资源规划1 、c r m ( c l i e n t r e l a t i o nm a n a g e m e n t ,客户关系管理) 、s c m ( s u p p l yc h a i nm a n a g e m e n t ,供应 链管理1 ,存在连接上的鸿沟,人们不得不重复的将数据在w e b 应用和企业内 部系统之间进行迁移:同时企业与其商务伙伴进行业务交易的前提也由传统的 电话、传真等联系方式逐渐演变成彼此之间信息系统地直接对话。 企业在将其业务模式转向i n t e r n e t 的过程中,为了让这些内部系统的正常运 转,在i n t e r n e t 上承接的业务数据必须能够被内部应用系统正确的发现,从而避 免企业员工再次输入的重复性劳动,而企业内部的e r p 、c r m 、s c m 等管理 系统一般是在企业成长过程中被逐个部署,出于投资、技术和应用领域等的考 虑,企业可能会使用不同厂商所提供的产品,因此每个应用都有其自己特有的 基础架构。一个个信息系统就如同一个个“信息孤岛 ,这些异构系统之间缺乏 有效的通信和信息共享。为了达到这个目的,传统的集成方法就是为每两个系 统之间提供独有的接口,那么当集成多个系统时接口的规模就会成规模的平方 增长,系统的运行和维护扩展和升级将很难控制。 这些年来,w e bs e r v i c e 是i t 业界的焦点所在。各大主要技术提供者无一 不在关注和推动w e bs e r v i c e 的发展。在产品方面,传统的中间件厂商巨头对 w e bs e r v i c e 的支持也是不遗余力。m i c r o s o f t 的n e t 战略即以x m l 为基础, 其新发行的n e t 将成为w e bs e r v i c e 的主要产品,i b m 公司很早就推出了w e b s p h e r e 产品,支持各种有关的w e bs e r v i c e 标准;s u n 公司新推出了开放式的软 件架构s u n o n e ,力图融合j a v a 和x m l ,此外还有b e a 公司的w 曲l o g i c , o r a c l e 公司的o r a c l e 9 i a p p l i c a t i o ns e r v e r 等,无不体现了这些重量级的技术提 武汉理工大学硕士学位论文 供商对w e bs e r v i c e 的推崇和重视【l j 。 w e bs e r v i c e 技术是基于x m l 的,而x m l 技术又是将会取代h t m l 的语 言,现在,x m l 技术已经是互联网信息交换的标准语言。基于x m l 的w e b s e r v i c e 技术在世界各大信息技术主流公司的推动下,发展的如火如荼。理论和 实践证明,w e bs e r v i c e 是解决企业应用集成的理想方式。虽然发展还不够成熟, 但是如果等发展成熟之后再去应用,那么w e bs e r v i c e 已经过时了。w e bs e r v i c e 必将随着它的应用范围的不断推广和深度的不断发展而越来越成熟。 w e bs e r v i c e 消除了平台和程序语言障碍,使得现有的不同的企业的异构系 统之间有效的通信成为可能或变得更加高效。从而企业的商业竞争力得到极大 提高。w e bs e r v i c e 建立在完全开放的标准之上,可以被认为是基于i n t e m e t 的 组件开发模型,通过提供一种平台无关、语言无关、数据格式无关的w e b 访问 接口,形成了一种在网络环境下,支持不同的系统平台、数据格式和编程语言 的企业解决方案。 本文的目标是在当前的技术的基础上提出一种完全基于w e bs e r v i c e 的企 业应用集成框架,以灵活动态支持企业集成的需要:研究服务的自动组合,使 得企业应用集成中现存服务所能提供的功能更为强大以更好的提高企业的商业 竞争力。 1 2 国内外研究现状 传统点对点的集成方法,往往无法满足企业的需求并导致整合成本过高与 整体效率过低的现象,研究报告显示s t a n d i s hg r o u p 以北美地区为例,9 0 年代 中以传统方法进行系统集成的案例中有3 1 的项目执行到一半时就因种种因素 而被取消;有5 1 的项目因整合的瑕疵仍无法有效结案;只有1 6 的集成项目成 功。 然而企业身处电子商务的经营环境中,所面对的是价值链与价值链的集体 式竞争方式,为提升整体价值链上相关企业的经营效率,个别企业必须积极进 行组织内的应用程序、作业流程及组织外合作伙伴流程的整合工作。传统的企 业往往着眼于企业内部的集成,面临着电子商务和b 2 b 的飞速发展,很多企业 无所适从,错失了许多商业机会。在近1 0 几年来的分布式计算技术发展过程中, 逐步出现了r m i 、c o r b a 和d c o m 等技术,它们在企业间集成应用中取得了 2 武汉理工大学硕士学位论文 一定的成功,但它们仍然存在种种致命的缺点,使得它们的使用始终处于研究 领域或者狭窄的应用范围。 c o r b a ( c o m m o no b j e c tr e q u e s t b r o k e ra r c h i t e c t u r e ,公共对象请求代理架 构) 虽然成功地定义了一种语言无关的通信方式,但它却把实现o r b ( o b j e c t r e q u e s tb r o k e r ,对象请求代理1 的协议的任务留给了供应商。同时,企业防火墙 注意到i i o p 新协议,并且有的时候就阻止o r b 通信。i i o p 很快给c o r b a 带 来一个难与防火墙一起工作的坏名声。 r m i ( r e m o t em e t h o di n v o c a t i o n ,远程过程调用) 的实现需要通信的两端都有 j a v a 运行环境,这从根本上阻碍了它的推广。 d c o m ( d i s t r i b u t e dc o m p o n e n to b j e c tm o d e l ,分布式组件对象模型) 依赖于 严格管理的环境,如果要开发d c o m 应用程序,则所有参与该分布应用程序中 的节点都必须得到w i n d o w s 系统的支持。要找到能成功地在外部调用d c o m 或h o p ( i n t e r n e ti n t e r - o r bp r o t o c o l ,互联网内部对象请求代理协议1 的任意两台 计算机几乎是一件不可能的事情【1 刀。 目前,国内外研究的e a i 结构模式主要有以下几种六种:集成适配器模式、 f a c a d e 模式、集成信使模式、集成中介模式、过程自动控制模式和w e bs e r v i c e 模式1 4 1 。 与传统模式相比,w e bs e r v i c e 模式具有诸多优越性【3 】: 1 w e bs e r v i c e 使得企业能够将应用数据,功能或者过程以服务的形式发 布出去,让其他的合作伙伴使用。 2 w e bs e r v i c e 满足组织的外部集成需要。因为它允许企业的合作伙伴或 者客户按照某种安全的方式访问企业内部的系统,并获取相关的信息。 3 复用性。企业中不断的有新系统的开发,将些功能以服务的形式发布 出去之后,对于一个r r 企业而言,其他开发人员不需再开发此功能,实现复用。 4 扩展性。基于w e bs e r v i c e 开发架构,增加新应用只需注册该w e b s e r v i c e 。w e bs e r v i c e 更便于设计、开发、维护和使用;发布和使用服务的应用程 序问松散耦合。 1 3 本文的主要工作 本文在分析现有的企业应用集成解决方案的基础上,利用新的w e b 开发技 3 武汉理工大学硕士学位论文 术,研究基于w e bs e r v i c e 的企业应用集成,提出了一种基于w e bs e r v i c e 的企 业应用集成框架,设计了一种基于w e bs e r v i c e 的企业应用集成方案,并给出了 一个w e bs e r v i c e 实例。 本文主要内容的组织结构如下: 第1 章绪论。介绍了本论文研究的背景,简单分析了企业应用集成的研究 背景和存在的问题,介绍了本文的主要工作。 第2 章企业应用集成技术概述。介绍了企业应用集成的概念和层次,分析 了当前基于传统分布式技术( 如d c o m ,c o r b a 和r m i 等) 的企业应用集成 的现状,根据e a i 的特点及其类型,得出了基于w e bs e r v i c e 的e a i 解决方案 与传统的e a i 方案相比所具有的优势。 第3 章w e bs e r v i c e 技术概述。介绍了w e bs e r v i c e 的概念,分析了w e b s e r v i c e 协议栈、以及实现w e bs e r v i c e 所依赖的关键技术( x m l 、s o a p 、w s d l 、 u d d i ) ;分析了w e bs e r v i c e 的调用流程,并给出了一个基于j 2 e e 的架构模型。 第4 章基于w e bs e r v i c e 的企业应用集成框架的研究。在理论分析的基础 上,提出了基于w e bs e r v i c e 分别进行组件通信、企业内部应用集成和企业间应 用集成的框架。 第5 章基于w e bs e r v i c e 的企业应用集成方案的实现。在理论分析的基础 上提出了一个基于j 2 e e 的w 曲s e r v i c e 框架,并在a p a c h ea x i s 开源项目的环 境下开发了一个简单的,可供多平台、多语言使用的网页访问量统计服务。 第6 章总结。对本文的工作做了一些总结和展望。 4 武汉理工火学硕士学位论文 第2 章w e bs e r v i c e 技术概述 2 1w e bs e r v i c e 的定义 w e bs e r v i c e 至今还没有统一的一致的定义。以下是比较流行的几种定义: 定义一:w e bs e r v i c e 是自包含的、模块化的应用程序它可以在网络( 通常 为w 曲) 中被描述、发布、查找及调用。 定义二:w e bs e r v i c e 是基于网络的、分布式模块化组件它执行特定的任务, 遵循具体的技术规范。它们使得w e bs e r v i c e 能与其他兼容的组件进行互操作 i l o l o 定义三:w e bs e r v i c e 是指由企业发布的完成其特别商务要求的在线应用服 务,其它公司或应用软件能够通过i n t e m e t 来访问并使用这种服务【1 1 】。 由此可见,w e bs e r v i c e 有两层含义:第一,它是指封装成单一实体并发布 到网上的功能的集合;第二,w e bs e r v i c e 是指调用这些功能所获得的服务。一 个完整的w e bs e r v i c e 除了其实现代码以外,还包括它的接口定义。接口通常描 述了该w e bs e r v i c e 的功能和使用方法,客户端通过接口来调用w e bs e r v i c e 。 w e bs e r v i c e 之间还可以组合成新的w e bs e r v i c e 。 2 2w e bs e r v i c e 的协议栈 w e bs e r v i c e 技术有一套开放的规范标准,包括x m l 、s o a p 、w s d l 、 d i s c o 、u d d i 、w s f l 、h 1 r p 等。w e bs e r v i c e 协议栈是以x m l 为基础,s o a p 、 w s d l 与u d d i 为核心的标准协议集。表2 1 给出了一个w e bs e r v i c e 概念性协 议栈1 1 4 】【1 5 】【1 6 】。 5 武汉理工大学硕士学位论文 表2 1w e bs e r v i c e 概念性协议栈 工具协议服务层次业务( b u s i n e s s ) w s f l 服务流程层( s e r v i c ef l o w )嫩垛 血 罚a s t a t i c - - ) u d d i 服务发现层( s e j c ed i s c o v e r y ) 蛉淄 龄 d i r e c t - - ) u d d i 服务发布层( s e r v i c ep u b l i c a t i o n ) 窃 趸 3 8 海 w s d l 服务描述层( s e r v i c ed e s c r i p t i o n ) : 旨 巴 l | 皿 服务的实现( s e r v i c ei m p l e m e n t a t i o n ) =口q s o 、 富 o 服务的接n ( s e r v i c ei n t e r f a c e ) 。 c 口 s o a p 基于x m l 的消息层( x m l - b a s e d 、 o m e s s a g i n g ) h x m ls c h e m a 数据模型层( d a t am o d e l i n g ) o _ x m l 数据表示层( d a t ap r e s e n t a t i o n ) o n h t t p ,f t p , 网络传输层( t r a n s p o r t ) s m t p w e bs e r v i c e 采用了分层的思想,各层实现各的功能,下层为上层提供服务。 左面的文本表示协议栈的对应层所使用的标准技术,右面业务( b u s i n e s s ) 的部分 表示在协议栈中每一层必须满足的要求。 1 网络传输层 它是w e bs e r v i c e 协议栈的基础,w e bs e r v i c e 要被服务请求者调用,就必 须是可以通过网络访问的。h t y p 是成为了i n t e r n e t 上w e bs e r v i c e 真正的标准 网络协议。当然,w e bs e r v i c e 还可以支持其它因特网协议,如s m t p ( 用于电 子邮件) 、f t p ( 用于文件传输) 。 2 数据表示层 数据表现层的x m l 为整个w e bs e r v i c e 的上层协议提供了数据信息描述手 段,x m l 是目前全球范围内用于描述数据和交换数据的一种标准方式。可扩展 标注语言x m l 作为i n t e r n e t 上的一种新的数据交换标准,其应用范围从早先的 w e b 信息描述,发展到后来的数据交换的开放标准,乃至目前的服务集成和服 务交互的开放技术,x m l 己经成为开放环境下描述数据描述信息的标准技术。 在w e bs e r v i c e 的时代,全部的规范、技术同样都是以x m l 为底层核心和构架 基础的。对于w e bs e r v i c e 而言,无论是w 曲s e r v i c e 的调用( s o a p ) 、w 曲s e r v i c e 接口的描述( w s d l ) ,还是w e bs e r v i c e 的发现( u d d i ) ,都是使用x m l 作为信 息描述和交换的标准手段。 6 武汉理工大学硕士学位论文 3 数据模型层 在数据表示层上是数据模型层,描述数据结构的数据模型( 也称为元数据) 。 它同样也是一种数据,因此,描述数据结构的方式也是使用基础的数据表现方 式:x m l 。x m l s c h e m a 己经成为x m l 世界中的标准数据建模语言,s o a p 、 w s d l 、u d d i 的x m l 语法都是采用x m ls c h e m a 进行定义和描述的。 4 基于x m l 的消息传递层 它使用x m l 作为消息传递协议的基础,使用s o a p 作为x m l 消息传递协 议。 5 服务描述层 它使用w s d l 作为w e bs e r v i c e 描述协议。w s d l 是基于x m l 的服务描 述的真正标准,定义了服务交互的接口和结构。 6 服务发布层 服务提供者可以直接向服务请求者发送w s d l 文档( 称为直接发布) ,也 可以将描述服务的w s d l 文档发布到本地注册中心或专用u d d i 注册中心。 7 服务发现层 该层的各种发现机制和一组发布机制互相平行。因为w e bs e r v i c e 如果没有 被发布就不能被发现,也就是说服务发现依赖于服务发布。 8 服务流程层 服务流程描述了如何执行服务到服务的通讯、合作以及流程,而w s f l 则 用于描述这些交互。要使基于w e bs e r v i c e 的应用程序满足不断变化的企业需 求,就必须提供企业级基础结构,包括安全性、管理和服务质量。这几个垂直 条在协议栈的每一层都必须得到解决,每一层的解决方案可以彼此独立。 2 3w e bs e r v i c e 的体系结构 w e bs e r v i c e 的体系结构可以用图2 - 1 来描述: 7 武汉理工大学硕+ 学位论文 图2 - 1w e bs e r v i c e 的体系结构【1 2 l w e bs e r v i c e 体系中有如下三个角色: 1 服务提供者( s e r v i c ep r o v i d e r ) 从企业的角度看,这是服务的所有者。从体系结构的角度看,这是托管被 访问服务的平台。 2 服务请求者( s e r v i c er e q u e s t e r ) 从企业的角度看,这是要求满足特定功能的企业。从体系结构的角度看, 这是寻找并调用服务,或启动与服务交互的应用程序。服务请求者角色可以由 浏览器来担当,由人或无用户界面的程序( 例如,另外一个w e bs e r v i c e ) 来控 制它。 3 服务注册中- t 1 , ( s e r v i c er e g i s t r y ) 这是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描述。 在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服务的绑定 信息( 在服务描述中) 。对于静态绑定的服务请求者,服务注册中心是体系结构 中的可选角色,因为服务提供者可以把描述直接发送给服务请求者。 w e bs e r v i c e 体系结构包括以下行为: 1 发何( p u b l i s h ) 为了使服务可以访问,需要发布服务描述使服务请求者可以查找它。 2 查找( f i n d ) 在查找操作中,服务请求者直接检索服务描述或在服务注册中心中查询所 8 武汉理t 大学硕士学位论文 要求的服务类型。对于服务请求者,可能会在两个不同的生命周期阶段中牵涉 到查找操作:在设计时,为了程序开发而检索服务的接口描述;而在运行时, 为了调用而检索服务的绑定和位置描述。 3 绑定( b i n d ) 查找到w e bs e r v i c e 以后需要调用该服务。在绑定操作中,服务请求者使用 服务描述中的绑定细节来定位、联系和调用服务,从而在运行时调用或启动与 服务的交互。 w e bs e r v i c e 体系中包含如下w e bs e r v i c e 构件: 1 服务( s e r v i c e ) 在这里,w e bs e r v i c e 是一个由服务描述语言描述的接口,服务描述的实现 就是该服务。服务是一个软件模块,它部署在由服务提供者提供的可以通过w e b 访问的平台上。服务的存在目的就是要被服务请求者调用或者同服务请求者交 互。当服务的实现中利用到其他的w e bs e r v i c e 时,它也可以作为请求者。 2 服务描述( s e r v i c ed e s c r i p t i o n ) 服务描述包含服务的接口和实现的细节。其中包括服务的数据类型、操作、 绑定信息和网络位置,还可能包括可以方便服务请求者发现和利用的分类及其 他元数据。服务描述可以被发布给服务请求者或服务注册中心。 2 4w e bs e r v i c e 的关键技术 2 4 1x m l x m l 5 0 i ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标记语言) 是由s g m i _ ( s t a n d a r d g e n e r a l i z e dm a r k u pl a n g u a g e ,标准化通用标记语言) 发展而来,是s g m l 的一个 简化子集,它以一种开放的自我描述方式定义数据结构,在描述数据内容的同 时能突出对结构的描述,从而体现出数据之间的关系。目前成为网络信息交换 的标准。 x m l 作为一种新的i n t e r n e t 上的数据交换标准,其应用范围从早先的w e b 信息描述发展到后来的数据交换标准,乃至目前的服务集成和服务交互的开放 标准。x m l 已经成为开放环境下描述数据和描述信息的标准技术。w e bs e r v i c e 全部的规范、技术为核心和架构基础的。对w e bs e r v i c e 而言,无论是w e bs e r v i c e 9 武汉理上大学硕士学位论文 的调用即s o a p 技术,w e bs e r v i c e 界面描述即w s d l 技术,还是w e bs e r v i c e 的发现和发布技术即u d d i 技术,都是使用x m l 作为描述和信息交换的标准 手段【1 7 1 。 通常所说的x m l 技术包括很多相关的规范和协议,基本的x m 目关标准及 它们的关系如图2 2 所示【1 8 】: 图2 2x m l 的相关标准 x m l 的主要特点如下【2 9 l : 1 可扩展性 允许各个组织、个人建立适合自己需要的标志集合,可以根据需求参数化 和语义化相应的数据。 2 可校验性 用户可以通过d t d 或x m ls c h e m a 来校验x m l 文档的格式是否满足d t d 或 x m ls c h e m a 的约束。 3 自我描述性 x m l 是一种元语言,可以通过x m ls c h e m a 来解释和约束另一个x m l 文档 l o 武汉理工大学硕士学位论文 的定义。 4 结构性 数据存储格式不受显示格式的制约。一般包括三个要素:数据、结构以及 显示方式。x m l 使用d t d 文档类型定义) 规定一套关于标记符号的语法、语义 规则,比较准确地描述文本资料的内容、含义、结构、特征和关系等信息( 称 为元资料) ,而把资料的外观表现形式交给样式表( 女n c s s ,x s l ,d s s s l 等) 处理,这样就把资料的内容和其表现形式合理地隔开,从而大大提高x m l 资料 的可理解性、可交换性和重用性。因此,运用x m l 可以有效地解决新旧系统、 不同应用系统之间或者不同数据源之间的数据共享与交互问题。 x m l 的解析技术有以下两种: 1 d o m ( d o c u m e n to b j e c tm o d e l ,文档对象模型) d o m 是w 3 c 组织提出的推荐标准,用于访问和处理x m l 文档结构的标准方 法。d o m 解析器的原理是根据x m l 文档的层次结构,将x m l 3 之档转换成为一个 节点树形式的抽象表示。x m l 文档的每个组件都被抽象成为相应的d o m 节点对 象,并且对象之间的联系还反映了文档的层次结构【矧。表2 2 描述了主要的d o m 节点类型。 表2 2 主要d o m 节点类型 节点类型说明 n o d e代表文档中所有组件,它是以下所有节点类型的父亲 d o c u m e n t代表文档中唯一的根节点元素,包含所有的其他子元素 e l e m e n t代表文档的元素 a t t r代表元素的属性 t e x t 代表属性或者元素中字符数据 e n t i t y 代表一个x m l 实体 d o c u m e n t t y p e代表文档类型定义( d t d 、) d o m 的优点是提供应用对x m l 文档随机访问的能力。缺点是对内存的需求 比较高。在系统管理体系框架中,对x m l 文档的解析主要采取这种方式。 d o m 树中的所有结点都是从n o d e 对象继承而来的。n o d e 对象定义了一些最 基本的属性和方法,利用这些方法可以实现对树的遍历,同时,根据属性还可 以得知结点的名称、取值并判断其类型。利用d o m 提供的a p i 与编程语言无关, 所以对一些d o m 标准中没有明确定义的接口,不同解析器的实现方法也可能有 武汉理t 大学硕士学位论文 所差别。 d o m 规范提供的a p i 的规范,目前s u n 公司推出的j d k l 4 测试版中的j a v a a p i 遵循了d o ml e v e l 2c o r e 推荐接口的语义说明,提供了相应的j a v a 语言的实现。 在o r g x m l d o m q b ,i d k l 4 提供了d o c u m e n t ,d o c u m e n t t y p e ,n o d e ,n o d e l i s t , e l e m e n t ,t e x t 等接口,这些接口均是访问d o m 文档所必须的。利用这些接口创 建、遍历、修改d o m 文档。在j a v a x x m l p a r s e r s 中, d k l 4 提供的d o c u m e n t b u i l d e r 和d o c u m e n t b u i l d e r f a c t o r y 组合可以对x m l 文件进行解析,转换成d o m 文档。在 j a v a x x m l t r a n s f o r m d o m 和j a v a x s m l t r a n s f o r m s t r e a m 中,j d k l 4 提供了d o m s o u r c e 类和s t r e a m s o u r c e 类,可以用来将更新后的d o m 文档写入生成的x m l 文件中。 2 s a x ( s i m p l ea p if o rx m l ,x m l 简单应用程序接口) s a x 提供了一种对x m l 文档进行顺序访问的模式,这是一种快速读写x m l 数据的方式。当使用s a x 对x m l 文档进行顺序处理时,会激活相应的事件处理 函数,从而完成对x m l 文档的访问【姗。 s a x 的优点是为应用提供对x m l 文档的顺序访问机制,速度快、效率高。 缺点是缺乏对x m l 文档处理的灵活性,事件必须在发生时处理,并且不能创建 或修改x m l 3 档的内容和内部结构。 s a x 并不是由官方所提出的标准,与d o m = g 较,s a x 是一种轻量型的方法。 在处理d o m 的时候,我们需要读入整个的x m l 文档,然后在内存中创建d o m 树, 以生成d o m 树上的每个n o d e 对象。当文档比较小的时候,这不会造成什么问题, 但是一旦文档大起来,处理d o m 就会变得相当费时费力。特别是其对于内存的 需求,也将是成倍的增长,以致于在某些应用中使用d o m 是一件很不划算的事。 这时候,一个较好的替代解决方法就是s a x s a x 在要领上与d o m 完全不同。首先,不同于d o m 的文档驱动,它是事件 驱动的,也就是说,它并不需要读入整个文档,而文档的读入过程也就是s a x 的解析过程。所谓事件驱动,是指一种基于回j 周( c a l l b a c k ) 机制的程序运行方法。 在x m l r e a d e r 接受x m l 文档时,在读入x m l 文档的过程中就进行解析,也 就是说读入文档的过程和解析的过程是同时进行的,这和d o m 区别很大。解析 开始之前,需要向x m l r e a d e r 注册一个c o n t e n t h a n d l e r ,也就是相当于一个事件 监听器。在c o n t e n t h a n d l e r 中定义了很多方法,l i , 女1 1 s t a r t d o c u m e n t 0 ,它定制了当 在解析过程中,遇到文档开始时应该处理的事情。当x m l r e a d e r 读到合适的内 容,就会抛出相应的事件,并把这个事件的处理权代理给c o n t e n t h a n d l e r ,并调 1 2 武汉理工大学硕士学位论文 用其相应的方法进行响应。 c o n t e n t h a n d l e r 实际上是一个接口,当处理特定的x m l 3 之件的时候,就需要 为其创建一个实现了c o n t e n t h a n d l e r 的类来处理特定的事件。可以说,这个实际 上就是s a x 处理x m l 文件的核心。如下是定义在其中的一些方法: v o i dc h a r a c t e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 能在电脑上写数学试卷
- 蒲城县高二联考数学试卷
- 班级活动方案策划300字(3篇)
- 水渠围堰施工方案(3篇)
- 河北企业线下活动策划方案(3篇)
- 线上签约活动方案策划(3篇)
- 辽宁水帘施工方案(3篇)
- 杭州混凝土施工方案公司(3篇)
- 银行年度活动策划方案(3篇)
- 农村庭院大门施工方案(3篇)
- 湖北省圆创高中名校联盟2026届高三第一次联合测评 语文试卷(含答案)
- 医务人员职业道德准则理论试题
- 初中地理学科课程规划方案
- 定额〔2025〕1号文-关于发布2018版电力建设工程概预算定额2024年度价格水平调整的通知
- 2023年漳州市交通发展集团有限公司招聘笔试模拟试题及答案解析
- 放射性药物医学知识培训
- 高一英语必修一试卷(含答案)(适合测试)
- SHSG0522023年石油化工装置工艺设计包(成套技术)内容规定
- 《一次函数的图像》-完整版课件
- 电子束曝光机说明书
- 中国人民银行反洗钱调查审批表
评论
0/150
提交评论