(计算机应用技术专业论文)基于服务流的公文流转系统研究.pdf_第1页
(计算机应用技术专业论文)基于服务流的公文流转系统研究.pdf_第2页
(计算机应用技术专业论文)基于服务流的公文流转系统研究.pdf_第3页
(计算机应用技术专业论文)基于服务流的公文流转系统研究.pdf_第4页
(计算机应用技术专业论文)基于服务流的公文流转系统研究.pdf_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

昆明理工大学硕士学位论文基于服务流的公文流转系统研究 摘要 基于工作流的自动文件流转系统在政府或企业内部已得到广泛应用,由于通 讯和网络技术的飞速发展,人们交换大量信息越来越方便,政府间或企业间文件 的大量交换迫使工作流必需跨越政府部门或企业边界进行整合。 然而,对于跨越部门边界的异构平台上的应用程序或工作流之间的信息交互 却十分困难,而对于工作流之间的交流,虽然w f m c ( w o r k f l o wm a n a g e m e n t c o a l i t i o n ) 组织作了许多开创性的工作,但是由于w f m c 工作流标准并非被所有 的工作流产品提供商采纳,它们在工作流的构建模型和构建语义上未能形成一致, 即在相同的工作流语言标准下,各厂商对流程的细节有不同的理解和实现,由此 也就造成了工作流之间互操作的不确定性。 本论文提出了一个以服务流为基础,实现异构系统之间公文流转的整合方案, 其研究内容是:根据基于服务的构架( s e r v i c e o r i e n t e d a r c h i t e c t u r e ,s o a ) 的思 想,首先,利用基于开放标准的x m l 和w e bs e r v i c e 技术,我们可以将待调用的 审批工作流( 审批点) 进行封装,使之成为可跨平台调用的w e b 服务;然后,在 此基础上与j :作流技术结合,利用基于x m l 的服务流组合技术将审批点进行组 合,组合的结果得到一个以x m l 描述的自动工作流,其消息传递以x m l 形式进 行,工作流的功能节点以服务的形式封装;在系统中利用x s l t 标准,可将数据从 一个x m l 词汇表转换成另一个x m l 词汇表,达到不同系统的词汇在语义上的 ,一致,以解决系统之间的互操作问题;自动工作流运行的结果就完成了公文的跨 部门流转,服务流的实现基于b i z t a l k2 0 0 4 和n e t 框架平台。 以这种构架建立的系统可以提升异构工作流系统之问的信息交流能力,为跨 部门、跨地域的公文流转审批提供了种解决途径,实验证明它是有效的。 关键词:文件流转w e bs e r v i c e 工作流s o a 服务流 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 a b s t r a c t a u t o m a t i cw o r k f l o ws y s t e m sh a v eb e e nw i d e l yu s e dt os o l v et h ep r o b l e mo f d o c u m e n tf l o ww i t h i nag o v e r n m e n to ro r g a n i z a t i o nw i t ht h ed e v e l o p m e n to f t e c h n o l o g yi nt h ef i e l d so fn e t w o r ka n dc o m m u n i c a t i o n ,e x c h a n g i n gl o t so f i n f o r m a t i o n i s b e c o m i n gv e r y e a s y t h i sf o r c e sw o r k f l o w st oe x c h a n g ei n f o r m a t i o nc r o s st h e b o u n d a r i e sa m o n g g o v e r n m e n t so ro r g a n i z a t i o n s i ti sd i f f i c u l tt os u p p o r tt h ee x c h a n g eo fw o r k f l o ws p e c i f i c a t i o n sb e t w e e nd i f f e r e n t w o r k f l o wp r o d u c t sw o r k f l o wm a n a g e m e n tc o a l i t i o n ( w f m c ) h a sb e e na c t i v et o s t a n d a r d i z eb o t haw o r k f l o wp r o c e s sd e f i n i t i o nl a n g u a g ea n dt h ei n t e r f a c e sb e t w e e n v a r i o u sw o r k f l o wc o m p o n e n t ss i n e19 9 3 b u tt h e r ei ss t i l ln oc o n s e n s u so nt h e w o r k f l o wc o n s t r u c t st h a tn e e dt ob es u p p o r t e da n dt h e i rs e m a n t i c ss ot h e r ea r em a n y d i f f e r e n ti n t e r p r e t a t i o n sa b o u tas a m ew o r db a s e do nt h es a m es t a n d a r dt h i sr e s u l t si n t h eb e y o n dc o m p r e h e n s i o na m o n gw o r k f l o w s t h i sp a p e rp r e s e n tam o d e lb a s e do nt h es e r v i c ef l o wt oc o m b i n et h ev a r i o u s w o r k f l o wt h er e f e r e n c er e s e a r c h e st ot h em o d e l :b a s e do nt h e s p f i t s o f s o a ( s e r v i c e o r i e n t e d a r c h i t e c t u r e ) ,f i r s t ,t h i n k st ot h ex m l a n dw e bs e r v i c e ,w ec a n w r a pt h em v o k e dw o r k f l o ws y s t e m ( s e r v i c ep o i n t ) i n aw e bs e r v i c e ,t h e nt h em o d e l c o m b i n ew i t ht h ew o r k f l o wa n dw e bs e r v i c ec o m p o s i t i o nt e c h n o l o g yt oc o m p o s i t et h e s m w i c et oas e r v i c ef l o w 一- aa u t o m a t i cw o r k f l o wt h a te x c h a n g ei n f o r m a t i o nb a s e do n x m li no r d e rt os o l v et h es e m a n t i cp r o b l e mt h em o d e lu s et h et 0 0 1o fx s l tt o t r a n s f o r ms p e c i f i c a t i o n sb e t w e e nt h et w ow o r k f l o w so u t p u tt h er e s u l to fr u n n i n gt h i s a u t o m a t i cw o r k f l o wf u l f i l l e dt h et a s ko fd o c u m e n tf l o wc r o s st h eb o u n d a r i e sa m o n g g o v e r n m e n t so ro r g a n i z a t i o n st h er e a l i z a t i o no fs e r v i c ef l o wi s b a s e do i lt h en e t f r a m e w o r ka n db i z t a l ks e r v e r2 0 0 4 t h e s y s t e m b a s e do nt h em o d e lc a ni m p r o v et h e a b i l i t yo f i n f o r m a t i o n s e x c h a n g i n ga m o n gv a r i o u sw o r k f l o w , a n dt h e no f f e raa l t e r n a t i v ew a yt o s o l v et h e p r o b l e mo fd o c u m e n tf l o wa m o n gg o v e r n m e n t so ro r g a n i z a t i o n s t h ee x p e r i m e n t i n v o l v e di nt h i sp a p e rp r o v e dt h a tt h em o d e li se f f e c t i v e k e yw o r d s :d o c u m e n tf l o w w e bs e r v i c ew o r k f l o ws o as e r v i c e - f l o w 昆明理工大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下进行 研究工作所取得的成票:除文中已经注明引用的内容外,本论文不含 任何其他个人或集体三经发表或撰写过的研究成果。对本文的研究做 出重要贡献的个人和集体,均已在论文中作了明确的说明并表示了谢 意。本声明的法律结景由本人承担。 学位论文作者签名 日 期: 壹才走 2 堂年弓月2 占日 关于沦文使用授权的说明 本人完全了解昆明墓工大学有关保留、使用学位论文的规定,即: 学校有权保留、送交论文约复印件,允许论文被查阅,学校可以公布 论文的全部或部分内容可以采用影印或其他复制手段保存论文。 ( 保密论文在解密后应遵守) 导师签名: 塞尘璺 论文作者签名:耋蕴垫 日 期:2 堕生主目丛旦 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 第一章绪论 1 1 公文流转技术概述 公文流转过程是一种业务流程,业务流程可以被定义为一个具有各种不同功 能的活动相连的。组有相互关系的任务;将公文审批工作以流程的形式,由发起 者( 如文件起草人) 发起流程,经过本部门以及其它部门的处理( 如签署、会签) , 最终到达流程的终点( 如发出文件、归档入库) ,就形成了文件流,实现这种业 务流程现今多采用先进的工作流技术。 所谓的工作流,根据工作流管理组织w f i v l c ( w o r k f o wm a n a g e m e n tc o a l i t i o n ) 的定义,j :作流( w o r kf l o w ) 就是自动运作的业务过程的部分或整体,表现为参 与者对文件、信息或任务按照规程采取行动,并令其在参与者之问传递。简单地 说,工作流就是一一系列相互衔接、自动进行的业务活动或任务;工作流软件的核 心是驱动流程自动执行的工作流引擎。 工作流引擎足一种基于软件的服务,通过服务提供的过程定义模块( 如图 1 1 ) ,就口j 以将完成文件流转业务所需的活动( a c t i v i t y ) 、角色( r o l e ) 、应用程 序( jn v o k e da p p l i c a t i o n ) 等元素连接到t 作流引擎,使之按照定义的流程逻辑 和路线规则自动执行,同时通过其它模块完成对流程的执行过程进行监控、管理等 功能。1 ” 图11w f m c 工作流模型 i 睡野 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 1 2 跨组织工作流技术的发展现状及在新需求下的不足 基f 工作流的自动文件流转系统在政府或企业内部己得到广泛应厂h ,由于通 讯和网络技术的飞速发展,人们交换大量信息越来越方便,政府间或企业间文件 的大量交换迫使工作流必需跨越政府部门或企业边界进行整合。 理想的工作流程应该是可以互相连接、交叉或循环进行的,如一个工作流的 终点叫能就是另个工作流的起点,如上级部门的发文处理过程结束后引发了下 级部门的收文处理过程。t 作流程也可能是打破单位界限的,发生于机关与机关 的相关单位之间,完全不同的工作流之问的交互己不可避免,这就产生了跨组织 工作流的交互和管理问题。 1 2 1 跨组织工作流技术的发展现状 在公文的审批过程中,对f 某些公文而言单。的某政府部门很难立刻作出批 示,它需要经过其它政府部门的传阅审批后,才能共同作出结论,此类业务的自 动化整合亦可采用工作流技术,这种跨组织工作流的构建涉及跨组织、跨平台的 各政府部fj 原有系统功能的协作和重新整合,这是一个复杂的问题。 跨组织流程的复杂性在于,组织问流程跨越政府机构,涉及多种流程;政府 部f j 内部集成技术包括了多家供应商,基础设施包括数据格式、通讯网络不一致; 对于服务流程还会涉及多家使用单位的不同定制需求等。现有的应用技术和部门 关系组成了张复杂的网络,改变这一网络困难较大。 随着互联嘲技术迅速在全球普及,企业以e r p 系统作为内部流程资产集成的 主要工具,全球包括政府部门在内大多数机构进行了适合信息时代加速期运营环 境特性的流程调整或重构,互联网强大的全球通讯能力使得复杂型跨组织流程成 为可能。到了9 0 年代末期互联网成为全球通讯技术的基本标准,称为“全面i p 化”( e v e r y t h i n go v e r i e i p o v e re v e r y t h i n g ) ,基础设施的一体化互联促进_ :r 业务流程 在各组织间集成管理设想的实施。企业问的流程联结系统在通讯底层尽管实现r 儿缝流畅互联,但由于在过去3 0 年,企业各自为了形成竞争优势而建成的各种应 用系统之间却存在巨大差异,形成了中问层各种多样的异类应用系统,它们之间 存庄不同的技术与业务语义本体( o n t o l o g y ) 差异,其互操作连接成为高层流程集 成管王甲的主要嶂碍,甚至在单个企业内部由于系统实施的时代和技术选择差异也 同样存在异类系统的集成难题。针对这一问题,先后出现了m i d d l e w a r e 、e a i 和 w o r k f l o w 等系统或流程集成技术。 昆明理工大学硕士学位论文基t d r 务流的公文流转系统研究 l 。作流技术( w o r k f l o w ) 可应用于组织与组织问应用集成。与偏向于企业内 部应用集成的e r p 等信息系统相比,它对于理顺运作,密切顾客与合作伙伴关系 以及提高流程柔性有重要的作用,已在多个领域得到了广泛的应用。新的技术和 规范正不断地被应用于系统。但在目前技术条件下,大多数的工作流产品仅支持 局域网环境下的企业内部流程的自动化,跨组织的基于异构平台与分布式环境的 t 作流管理系统还很少见,能力也很有限。如i b m 的工作流产品m q s e r i e s w o r k f l o w 可以将集成分布异构环境下的不同活动、系统和应用程序;有些工作流 产品提供w e b 服务,支持跨企业的经营过程集成。川4 1 1 2 2 工作流间交互的局限性 由于跨组织流程的构建必须解决组织工作流之问的交互问题,w f m c 组织作 了许多丌创性的工作,自1 9 9 3 年以来,该组织就致力1 二流过程定义语言的标准化 和各种工作流组件接口的标准化,2 0 0 2 年8 月,w f m c 发布了x p d l ( x m lp r o c e s s d e f i n i t i o nl a n g u a g e v e r s i o n10b e t a ) 来支持两个不同的t 作流产品之间工作流细 节的交流,但是由于w f m ct 作流标准并非被所有的工作流产品提供商采纳,一 些现存的: 作流系统n ,以输出x p d l ,但是它们中几乎没有任何一个系统可以从另 一个系统中输入x p d l ,从而产生一个有意义的交流结果。原因之一,w f m c 为 = :作流标准已进行了十余年的努力,但是在工作流的构建模型和构建语义上未能 形成一致,即在相同的工作流语言标准下,各厂商对流程的细节有不同的理解和 实现,这也是包括b p e l 在内的一系列基于x m l 标准开发的流定义语言标准的共 同问题,由此也就造成了r 作流之问互操作的不确定性。 5 1 1 6 1 1 2 3 新技术的召唤 然而随着基于公共标准的w e bs e r v i c e 技术的出现,与s o a ( s e r v i c eo r i e n t e d a r c h i t e c t u r e ) 相融合是工作流产品技术发展的趋势,目前,许多企业都是通过硬 线( h a r d w i r e d ) 关联的模式实现企业内外部的应用沟通,但这种模式很难快速响应 市场变化。s o a ( 面向服务的系统架构) 集合了w e b 服务等基于行业标准的软件 组件,让企业能够建立灵活,可重复使用的应用关联来应对特定的行业问题。 s o a 是一系列业务流程,借助可反复使用的标准接l j 将企业内及企业外客户、 合作伙伴和供应商的应用程序整合在一起,对企, i k , l k 务的流程进行优化,实现跨 f 、砭川程序的业务流程自动化。s o a 既是体系结构模型,又是编:f 旱模型,是一种构 建软件的方式。 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 在未来几年中,各大组织将会把以s o a 作为一项标准来接受,对于这种有效 的设计方法也会有更好的了解。对于提供诸如工作流软件等基础架构软件以创建 和运行企业应用程序的产品提供商而言,需要升级产品使其能够支持s o a ,以便 达到以s o a 的要求。 借助基于服务的s o a ( s e r v i c eo r i e n t e da r c h i t e c t u r e ) 结构为基础构建的软件 甲台,有些l :作流产品提供w e b 服务,支持跨组织的业务过程集成,例如m i c r o s o f t 的基于服务构架的f 。作流j 6 品b i z t a l ks e r v e r2 0 0 4 。 1 3 本论文的研究内容和意义 本论文提出了一个以服务流为基础,实现异构系统之间公文流转的整合方案, 其研究内容是:根据基于服务的构架( s e r v i c e o r i e n t e d a r c h i t e c t u r e ,s o a ) 的思 想,首先,利用基f 开放标准的x m l 和w e bs e r v i c e 技术,我们可以将待调j 斗j 的 审批工作流进行封装,使之成为可跨平台调用的w e b 服务;然后,在此基础七与 j 二作流技术结合,利用基于x m l 的服务流组合技术将审批点进行组合,组合的结 果得到一个以x m l 描述的自动工作流,其消息传递以x m l 形式进行,工作流的 功能节点以服务的形式封装;在系统中利用x s l t 标准,可将数据从一个x m l 词 i _ 褒转换成另一个x m l 词汇表,达到不同系统的词汇在语义上的一致,以解决 系统之间的互操作问题;自动工作流运行的结果就完成了文件的跨部门流转,服 务流的实现基于b i z t a l ks e r v e r2 0 0 4 和n e t 框架平台。 主要工作如下: 1 ) 分析常7 j 公文结构,并依其结构进行x m l 模式定义。 2 ) 住分析服务点的交互模式的基础上,基于a s p n e t 构建两个工作流模拟审 批服务r 、:i ,并对其进行w e bs e r v i c e 封装。 3 ) 拟以b i z t a l ks e r v e r2 0 0 4 为s o a 构架的实现工具,实现服务流程的组合, 并将服务流程发布为w e bs e r v i c e 。 4 ) 基于a s p n e t 建立服务流程调用客户,并调用服务审批流程,验证实验结 果。 以这种构架建立的系统可以提升异构l 作流系统之间的信息交流能力,它可 以用义档交换的方式,在应用程序和业务流程之间实现顺畅的半自动化信息交换 机制,而不必考虑这些信息最初是由何种应用或平台提供的,从而可以缓解文件 流转川题r 1 白跨平台工作流的交流问题。 垦塑型三查堂堡主兰竺笙茎苎王! ! 墨堕竺竺苎塑茎至竺竺至 现今许多政府部门已陆续建立了自己的w e b 服务器和网站,有的还实现了一 些简单的网上业务。但由于各相关单位在信息化建设中,其审批流程是各自在自 己认为合适的平台上建立起来的,而这些工作流的广泛交流,如上所述,是很困 难的,这就阻碍了跨部门、跨地域的公文流转审批,本文研究的这种系统构架可 以作为解决途径之一,使电子政务工程成为“面向社会的政府办公自动化”,具有 广泛的应用前景。由此,本课题的研究有一定的前沿性和必要性。 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 第二章公文流转处理的特点和技术要求 2 1 公文流转的特点 如图2l 所示,某公司预开发一住宅项目,必须先获得土地管理部门颁发土地 许可证和相关的批文,然后撰写可行性报告并附上土地的批文,向计委进行申报: 获得计委的批文后附上规划方案,再向规划局申报;在取得规划许可证后,便可 同时去建设厅办理施工许可证,去自来水公司办理用水许可证,去供电局办理用 电相关手续;住宅建盖过程中又要向房管局申请销售许可证;住宅竣工后又要向 质检站申请竣工事宜。 引磐! = :- ;囊嚷 、疆 i 葡5 等1 ”一 自管目 图21 公文流转示例 7 i “l j f 一,r :h 、。 e 植j 以上呈现的是一个复杂的文件流转过程,它有以下特点: 文档属于某种由多个步骤组成且需要长时间执行的处理过程,在此类处理 过程中,信息由多个参与者共同生成,需要在不同参阅者之问来会传递, 并且会定期进行修改或扩展。 文档的传递与处理需求取决于文档中所包含的信息。 来自于其它信息中的公文内容将被归入文档本身。 文档可能在处理过程中任意步骤内的初始上下文中加以引用。 文档和参与者标识将在处理过程中的某个环节上进行验证。 在整个处理过程生命周期中,有多个文档和附件,对它们的访问会在很长 一段时间内存在,并将会涉及多个参与方及应用程序。 鲰匦黼曩黪攀蜥 i|二,j1 1 - 昆明理t 大学硕十学位论文基于服务流的公文流转系统研究 2 2 公文的流转对实现技术的要求 由图21 可见,公文的流转是由多个公文审批点来按序完成的,每个公文审批 点我们称之为服务点,而一个服务点序列我们称之为一个服务流i ”】。为了实现一 个服务流,系统必须具备相应的处理功能。 在实现服务流的网络上,每个服务点所具备的软硬件基础设施不会完全相 同,但它们必需具备公文的处理能力,或是人工处理或是一个自动的工作 流进行处理。 每个眼务点必须具备公文的交换能力,即有一个收发公文的接口,在接口 川复发的公文必需有统一描述语言( 或统一的编码) 。 在统一的文件描述语言规范下,流程有将不同来源的公文的内容进行解 析,并有准确理解其关键字段的语义的能力,即确保提供独立于软件应用程 j 的内容访问能力。 系统必须提供工作流服务,并且要支持服务流实现过程的规划定义。 每个服务点收发公文的接口,能方便的被系统的:【作流集成,接u 最好具 备自描述能力。 服务流的实现过程必须提供对长期事务的支持。 提供易r 理解的信息,此类信息易于通过文件中的元数据( 定义、说明、 引用) 关联性进行处理与传递,以应用于消息机制和长事务的实现。 携带公文的信息的处理优先级是町定义的。 能够在不干扰处理过程中其它活动的情况下在处理过程中添加、删除或重 新配置各项活动的能力。 整个服务流实现过程的可监控性,即每一个文件的报批者都希望了解文件 现在的处理状态。 能够对各种异常处理需求进行处理过程方案设计。 处理过程能够轻松复制、扩展、伸缩。 提供端到端的安全控制。 以卜提及了整个系统的技术要求,本论文只对其中的骨干部分进行研究,并 进行了模型实现,对于系统的安全和监控部分没有进行研究。论文的设计模型借 裕,s o afs e r v i c e o r i e n t e da r c h i t e c t u r e ) 的思想,其核心的支持技术涉及w e b s e r v i c e 和c o i t l p o s i t e w e bs e r v i c e s 技术,f 面就对它们逐一介绍。 昆明理工大学硕士学位沦空基于服务 :l l 的公文流转系统研究 第三章w e bs e r v i c e 和c o m p o s i t ew e bs e r v i c e s 技术 3 1w e bs e r v i c e 技术 3 1 1 7 e bs e r v i c e 内涵 w e bs e l v i c e 技术是一种通过w e b 基础设施提供软件服务的技术,这科,软件服 务有自包含、白描述的特性,可以被发布、定位,并通过w e b 调用【7 】:它提供了 种全新应用程序的集成方式,依赖于x m l 技术和基于x m l 建立的一系列标准, w e bs e r v i c e 技术在概念定义上将集成过程从程序层提升到信息( 文档) 与传输( 通 信) 层。应用程序的接口以x m l 定义的模式规范( w s d l ) 来定义和发布,传送 的消息从使用它的应用程序中分离出来,以清晰的文本形式对其进行展现,并采 用自描述x m l 元数据方式为其赋予含义及结构,并用以x m l 定义的消息规范 ( s o a p ) 来传送。这样使任意一种具备x m l 元数据解析能力并支持s o a p 消息 规范的应用程序都可以调用服务,并对获得的消息进行处理。 基于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 软构件被应用程序调用时,我们认为这个软 件服务得以实现。 这种技术为分布式应用提供了可重用的、松耦合、可自动集成的软构件。 3 1 2w e bs e r v i c e 基本技术 w e bs e r v i c e 软构件的接口静态定义依赖_ 丁1w s d l 规范,w s d l 用于服务描述: 而其传输和服务调用依赖于s o a p 协议实现,对w e bs e r v i c e 而言,其基本技术是 s o a p 和w s d l ,它 1 3 - 青8 是基j 二x m l 实现的。其协议栈如图3l ( a ) 所示。 w e bs e n c ec o m p o s i t i o n :p u b l i c , a t j o na n d b p e l 4 w sx l a n gw f l e t cd i s c o v e r y :u d d i s er v i c ed e s cr i p t i 0 1 3i a y e rw s d l x i v ln y 葛跨国g i n gl a y e r :s o a p t r a n s p o r tia y e rh t t p s m t pftpe t c 图3l ( a 1w e bs e r v i c e 协议栈 r 昆明理_ r 大学硕士学位论文基于服务流的公文流转系统研究 3 1 2 1 简单对象访问协议( s o a p ) 】) s o a p 协议简介 s o a p 协议以x m l 形式提供了一个简单、轻量的用于在分散或分布环境中交 换结构化和类型信息的机制。s o a p 本身并没有定义任何应用程序语义,如编程模 型或特定语义的实现:实际上它通过提供一个有标准组件的包模型和在模块中编 码数据的机制,定义了一个简单的表示应用程序语义的机制。这使s o a p 能够被 用于从消息传递到r p c 的各种系统。 s o a p 协议包括二二个部分: s o a p 封装结构( s o a pe n v e l o p ) 定义了一个整体框架用来表示消息中包 含什么内容,谁来处理这些内容以及这些内容是可选的或是必需的; s o a p 编码规则( s o a pe n c o d i n gr u l e s ) 定义了用以交换应用程序定义 的数据类型的实例的一系列机制; s o a p r p c 定义了一个用来表示远程过程调用和应答的协定。 s o a p 消息的最外层是封装元素e n v e l o p e ,它包含两个子元素:h e a d e r 和b o d y 。 h e a d e r 元素是可选的,协议推荐h e a d e r 用j 二携带与平台相关的控制信息,例如安 全或路由信息。b o d y 元素用于交换调用的具体信息。1 9 】 2 ) s o a p 消息类型 s o a p 消息可以使j j 两种方式发送:r p c 方式和文档方式。它们可以使用s o a p 丧见范编码或者利用它们自己独特的x m l 架构( x s d ) 以文字形式传输【9 i 。所有这 些结合在一起会产生4 种类型的s o a p 消息,但是在实际使用中,r p c 形式的s o a p 一般用于编码,而文档形式的s o a p 则用来传输文字。r p c 形式的s o a p 比文档 形式的s o a p 更受欢迎一些,部分原因是由j 二熟悉分布式计算的编程人员对r p c 更为熟悉。r p c 形式的w e b 服务与调用程序之间紧密耦合,客户端将参数发送给 w e b 服务,并且接收返回值。文档形式的w e b 服务则是松散耦合的,并且由文档 驱动,客,、端以双方同意的某种格式发送整个文档供w e b 服务处理。 紧密耦合的x m lw e bs e r v i c e s 的伸缩性没有松散耦合的w e b 服务好,我们可 以使川文档类型的s o a p 对象设计大容量的系统。 3 ) s o a p 消息交换模式 s o a p 的传输无关性使得s o a p 消息可以方便地和任意通信协议进行绑定( 例 如h t t p ,s m t p ) ,依附于这些网络传输协议的自身语义,依靠这些网络传输协议 n 勺交匾模式,来表达s o a p 所需要表达的传输消息交换模式。这样s o a p 可选的 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 消息模式如卜_ : 单向( o n e w a y ) :服务单方面接收s o a p 消息( 比如简单的数据接收服 务) 。 请求应答( r e q u e s t r e s p o n s e ) :服务方接收调用方的调用s o a p 消息, 然后向调用方发送响应s o a p 消息( 通常的服务调用) 。 要求响应( s o l i c i t r e s p o n s e ) :服务方向使用者发送s o a p 消息,然后接 收使用着的响应s o a p 消息( 比如重要通知,要求用户给出回执) 。 通知( n o t i f i c a t i o n ) :服务单方面发送s o a p 消启、( 比如a l e r t n e t 的 通知服务) 。 通常,传输协议的交互方式总是涵盖了这些调用交互模式,对于s o a p 消息 而言,s o a p 消息的传送是依靠传输协议中用来传输具体数据的那部分来完成的, 即传输协议的控制部分完成交互模式,而传输协议的数据部分传送s o a p 消息。 3 1 2 2w e bs e r v i c e 描述语言( w s d l ) 由上可知通信协议和消息格式已经达到了标准化,我们知道在通常的开发过 程中,对于对象的i n t e r f a c e 定具备相应的s d k 描述文档,w e b 服务也是种对 象,只1 i 过它是被部署在w e b 上而已。很自然的,我们也完全需要有对w e b 服务 这个对象的界面的s d k 描述文档。w s d l 正是这样一种描述语言,w s d l 定义了 一套基于x m l 的语法,将w e b 服务描述为能够进行消息交换的端口的集合,从 f i i 满足了这种需求。w s d l 服务定义为分布式系统提供了可机器识别的s d k 文 档,并目可用于描述自动执行的应用程序通信中所涉及的细节。 w s d l 文档被分为两个部分:服务接口定义( s e r v i c e i n t e r f a c ed e f i n i t i o n ) 和服 务实现定义( s e f v i c ei m p l e m e n t a t i o nd e f i n t t i o n ) ,并允许每个部分进行单独的定义和 重1 ,如图31 ( b 1 所示: sevce ser 1c e p 。ft r r l o l e m e n t a t i o n bndng d8f 。t 。“ y pe serv c e messaae 。 n t er f ace p or t y p e def 1nl ton oper a t l on 图3i ( b ) w s d l 文档组成 w s d l 文档在w e b 服务中定义使川的元素含义: t y p e s ( 类型) :数据类型定义的容器,它使用某种类型系统( 般使用x m l s c h e m a 中的类型系统1 。 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 m e s s a g e ( 消息) :通信消息的数据结构的抽象类型化定义。使用t y p e s 所定义的类型来定义整个消息的数据结构。 o p e r a t i o n ( 操作) :对服务中所支持的操作的抽象描述,一般单个o p e r a t i o n 描述了一个访问入f 1 的请求响应消息对。 p o r t t y p e ( 端口类型) :指抽象操作的集合,这些操作集合可以由一个或多 个端口来使用。 b i n d i n g ( 绑定) :为由特定端口类型定义的操作和消息指派具体的传输协 议和数据格式规范。 p o r t ( 端口) :( 协议数据格式) 绑定与具体w e b 访问地址组合,提供单个 服务访问t i 。 s e r v i c e ( 服务) :相关端口的集合。 图31 ( b ) 展示了w s d l 文档中各元素的逻辑关系: 图3l ( b ) w s d l 文档元素的逻辑关系 w s d i 。丈档将w e b 服务定义为端口的集合。端口通过b i n d i n g 来选择某个 p o r t t v p e 与某种具体的网络传输协议或消息传输协议相搭配,并通过选择定义过 的端口类型( p o r t t y p e ) 以达到重用其它元素的目的。1 “1 3 2c o m p o s i t ew e bs e r v i c e s 技术 得益于w e bs e r v i c e 技术,便可以对审批服务l i 进行封装,得到一一个有松耦台 i i ! 明理工大学硕士学位论文基于服务流的公文流转系统研究 特性的软构件,为j ,将这些构件组装在一起( 服务流) ,以便向外发布为w e b s e r v i c e ,供客户调用,我们需要利用- z o ow e bs e r v i c e 组合技术。 3 2 1w e bs e r v i c e 组合模式 f i 面是种普遍适川于w e bs e r v i c e 组合的模式f 1 2 j ,如图3 2 所示: f ,i l i wa l 1 1 0 r :“ i $ 钠”。 一i _ i 而赢l ,( io r c o i i i p o s i l e 1 l a s ( o n t l o jn 1 1 i id a l8 s p i 、1 【o 1 1f l o ws p e t ld p 、c ( 1 如o i i l t l ( r p s 、p ( 1 1 1 1 l ( i 坦! - 一 i :,。1 j 。,一! s 。e ,。l , 、,。i c s e ,t ,。n 、一i 【c 1 1 5 1 、9 i 一1 7 “。9 j ;:、1 ( p ,i 】l 、。k p s p a l lp 】 “1 、1 【。”1 5 l 1 1a p p e i 48 s c h e ( “i l e 】 ( h 1 h h p a lt p 】- i 1 图32w e bs e r v i c e 组合模式 服务封装模式( s e r v i c ew r a p p e rp a t t e r n ) :目的就是将应用实现的接1 2 1 与应用 具体实现( 一个单独的程序,。个e r p 应用,或一个工作流) 区分开来,这样就 可以将一些异构系统( c o r b a ,j 2 e e ,n e t ) 上的应用封装在统一的接口描述的 抽象后面,这种抽象可以利用w e bs e r v i c e 封装来完成。 服务组合模式( s e r v i c ec o m p o s i t i o np a t t e r n ) :原子服务( e l e m e n t a r ys e r v i c e ) 和组合服务( c o m p o s i t es e r v i c e ) 是不同的,一个原子服务是通过服务封装模式来 运行的己存应用。一个组合服务是由其它的组合服务或原子服务递归定义的。 b 务组合模式的目的是细化一个组合服务( c o m p o s i t es e r v i c e ) 的构件之间的 交互,而忽略那些实现和执行的模式。服务之间交流的细化必须实现流控制和流 数据的捕获以及对流数据的诵义的解析。流控制建立了一系列的命令,它们调用 服务组件,设置时间限制,中断或者终1 t 执行,流数据捕获则负责捕获服务组件 之问的数据流。b p e l 就是葡j 实现这些功能的流组合语言。 一一 洲 一 咿h 川 g 昆明理工大学硕士学位论文基于服务流的公文流转系统研究 3 2 2w e bs e r v i c e 组合语言 在图3 1 ( a ) 所示的协议栈中,w e bs e r v i c e 组合语占标准直接建立在w s d l 标 准顶1 - 。面向w e b 服务的业务流程执行语言( b u s i n e s s p r o c e s s e x e c u t i o n l a n g u a g e f o rw e bs e r v i c e s ,b p e l 4 w s 或b p e l ) 由m i c r o s o f t 、i b m 和b e as y s t e m s 联合开 发,基于) 也描述,用来编排和协调w e b 服务,以便于它们能够具有协作性和 事务性的行为表现。b p e l 规范己经提交给o a s i s 标准化组织进行审奄,以便能 够被最终指定为一种m 议标准。 尽管w 曲s e r v i c e s 为应用程序通过无边界网络相互传递消息和调用方法提供 了一种方法,但是它们仍然不能利用自身的力量满足业务流程的操作需求。业务 流程由一组独立和有序的操作组成,每个操作的执行结果都是适时、可预期和可 重复的。b p e l 使得w e bs e r v i c e s 能够满足这些需求。b p e l 从形式上定义了组成 复杂业务流程基本的结构化操作。冈为b p e l 指令集是流程的x m l 表述,并且具 有精确的语言和语法结构,所以,它为用户以文档形式总结流程提供了一+ 组可读 性强并且易于理解的指令。 b p e l 语言支持使用w s d l 描述的服务之f 司的与或逻辑组合,每个用w s d l 定义的服务都是由提供操作的端口组成,每一个操作( o p e r m i o n ) 又包括收发消息 的机制。当多个相关的服务及其操作共同协作来完成一个特定的任务时,就需要 一种特定的处理模式来将多个服务及其操作联合在一起,其中必不可少的是处理 命令的描述语言。w s d l 与b p e l 之间一个重要的不同是:w s d l 没有关注操作 之间的状态转换,而只是描述一个操作中消息的收发状态;而支持w e b s e r v i c e 组 合的b p e l 必须支持在调川不同w e b s e r v i c e 操作的过程时的状态记录。1 3 8 1 1 4 】1 垦! ! ! 坚查兰竺圭兰堡笙奎兰主里墨鎏塑竺兰鎏堑至竺! 塞 第四章公文流转系统的设计模型 4 1 公文流转系统构架模型 有了w e bs e r v i c e 和c o m p o s i t ew e b s e r v i c e 技术,我们就可以构架一个面向服 务流的公文流转系统模型,这是一种集成构架模型。 c l i e n ta 型e bser v 熙i e c t i e n t1 j ser

温馨提示

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

评论

0/150

提交评论