已阅读5页,还剩66页未读, 继续免费阅读
(计算机应用技术专业论文)oa系统数据交换层的设计和基于domino的实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
o a 系统数据交换层的设计和基于d o m i n o 的实现摘要 摘要 办公自动化系统在电子政务、电子商务等领域的应用日益广泛, 如何实现不同办公自动化系统之间的数据交换,解决“信息孤岛”问 题,是当前办公自动化领域研究的一个热点。 本文简要介绍了办公自动化系统的发展过程,分析了办公自动化 系统的现状,简单讨论了w e b 服务和x m l 技术在数据交换中的应用, 给出了在办公自动化系统中设计数据交换层的一般方法,并详细叙述 了在l o t u sd o m i n o n o t e s 环境下的实现过程。 文章详细介绍了数据交换层的主要设计目标以及围绕这些目标 的具体实现思路。类似的数据交换层在某大学基于l o t u s d o m i n o n o t e s 的办公自动化系统中得到了应用,有效的解决了与其他 办公自动化系统之间的数据交换问题。本文介绍的数据交换层的设计 实现思想可供其他o a 系统借鉴和参考。 关键词:办公自动化,数据交换,异构系统,w e b 服务,x m l 作者:王磊 指导老师:杨季文 t h e d e s i g no f ad a t a e x c h a n g el a y e r f o ro a s y s t e m s a n dr e l e v a n t i m p l e m e n t a t i o nb a s e d o nd o m i n o a b s t r a c t o ai sb e c o m i n gi n c r e a s i n g l yp o p u l a ri nt h ef i e l do fe - b u s i n e s sa n d e - g o v h o w e v e r ,i nt h ef i e l do fo ar e s e a r c h ,i ti sah o ts p o tt h a th o w t oe x c h a n g ed a t ab e t w e e nd i f f e r e n to a s y s t e m sa n dh o w t oc o n n e c tt h e d i s t r i b u t e di n f o r m a t i o ni s l a n d s t h i sp a p e rr e v i e w st h ed e v e l o p m e n to fo a ,a n a l y z e st h ec u r r e n t s t a t u s e so fo a ,d i s c u s s e st h ea p p l i c a t i o nf o r e g r o u n do fw e bs e r v i c e sa n d x m li nd a t ae x c h a n g i n g ,i n t r o d u c e st h eg e n e r a lm e t h o d so f d e s i g n i n ga d a t ae x c h a n g el a y e ri no a a n dd e s c r i b e sa ni m p l e m e n t a t i o ni nt h e e n v i r o n m e n to fl o t u sd o m i n o n o t e si nd e t a i l t h i sp a p e rd e t a i l st h em a i nd e s i g no b j e c to ft h ed a t ae x c h a n g el a y e r w i t h p r a c t i c a li m p l e m e n t a t i o n i d e a s s u c had a t ae x c h a n g e l a y e rh a s b e e n d e p l o y e d i nal o t u sd o m i n o n o t e s - b a s e do a s y s t e m i na u n i v e r s i t y , a n d h a s p r o v e dt ob ea ne f f e c tso l u t i o nt ot h ep r o b l e mo fe x c h a n g i n gd a t a b e t w e e nd i f f e r e n to a s y s t e m s t h ed a t ae x c h a n g el a y e ri n t h i s p a g e r p r o m i s e st ob eh e l p f u lt o t h ed e v e l o p e r sw h oa r ed e s i g n i n gt h es i m i l a r 0 a s y s t e m s k e y w o r d s :o a ,d a t ae x c h a n g e ,h e t e r o g e n e o u ss y s t e m ,w e b s e r v i c e s , x m l i l w r i t t e n b yw a n g l e i s u p e r v i s e db yy a n g j i w e n y 6 4 5 7 4 l 苏州大学学位论文独创性声明及使用授权的声明 学位论文独创性声明 本人郑重声明:所提交的学位论文是本人在导师的指导下,独立 进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文 不含其他个人或集体已经发表或撰写过的研究成果,也不含为获得苏 州大学或其它教育机构的学位证书而使用过的材料。对本文的研究作 出重要贡献的个人和集体,均已在文中以明确方式标明。本人承担本 声明的法律责任。 研究生签名:毖日 学位论文使用授权声明 期:0 一尸, 苏州大学、中国科学技术信息研究所、国家图书馆、清华大学论 文合作部、中国社科院文献信息情报中心有权保留本人所送交学位论 文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论 文。本人电子文档的内容和纸质论文的内容相一致。除在保密期内的 保密论文外,允许论文被查阅和借阅,可以公布( 包括刊登) 论文的 全部或部分内容。论文的公布( 包括刊登) 授权苏州大学学位办办理。 研究生签名:五躯日 1r 导师签名:尊虹日 期: 主竺曼! ! 期:j 咿l 6 o a 系统数据交换层的设计和基于d o m i n o 的实现第一章引言 1 1 办公自动化系统 第一章引言 1 1 1 办公自动化的基本概念 办公自动化( o f f i c ea u t o m a t i o n ) ,简称o a ,是以先进的科学技术、信息 技术、系统科学和行为科学为支柱的一门综合性技术。它以系统科学为理论基础, 行为科学为主导,综合运用信息技术完成各种办公业务【“】。 随着微电子技术、计算机技术和通信技术的不断发展,办公自动化系统在政 府机关、大型企事业单位得到了越来越广泛的运用。使用办公自动化系统能提高 工作效率,增强工作协同能力,减少人工操作的重复、复杂程度。同时,办公自 动化系统能改善办公环境,改进办公条件,规范作业流程,使管理水平进步科 学化和现代化。因此,办公自动化已经成为电子政务和电子商务领域的重要的研 究内容。 在电子政务领域,办公自动化系统的建设能促进政务信息化、规范化和程序 化的发展,改变政府传统的工作模式,建立一种以公众服务为中心,以高效、公 平、公开、勤政、廉洁为特征的新型政府管理和工作模式。 在电子商务领域,办公自动化系统可以将一般员工从繁琐的事务性工作中解 放出来:决策层利用办公自动化系统可以迅速综合各方面的信息,及时制定企业 战略决策。同时在办公自动化系统的实旄过程中,可以简化企业的组织结构,实 现各部门在信息共享基础上的协作,提升企业的核心竞争力,使企业在商海中立 于不败之地。 1 1 2 办公自动化系统的发展过程 由于办公自动化系统本身的特性,它的发展和微电子技术、计算机技术、通 信技术的发展十分密切。办公自动化从诞生至今。主要经历了三个阶段【蚴。 第一阶段是从上个世纪8 0 年代中期到9 0 年代中期。这个阶段,以个人电脑 和办公套件的出现和使用为主要特征。该阶段的办公自动化系统使用文件系统和 关系型数据库系统,以结构化数据为存储和处理对象,强调对数据的计算和统计 能力,实现了数据统计和文档写作电子化,完成了办公信息载体从原始纸介质向 第一章弓【占 o a 系统数据交换层的设计和基于d o m i n o 的实现 电子介质的飞跃,实现了个体工作的自动化。 第二阶段是从上世纪9 0 年代中期开始,这个阶段的办公自动化系统以网络 技术和协同工作技术为主要特征。9 0 年代中期,随着i n t e r n e t i n t r a n e t 技术 的出现,办公自动化系统不再满足于单机的资源信息管理,急切需要资源和信息 的共享。在网络技术的直接推动下,实现了办公自动化系统的网络化和工作流程 的自动化。不同部门、不同人员工作间的协作大大加强,从而使办公的效率得到 较大的提高。而且办公自动化系统实现了移动办公,p c 、p d a 、手机等多种设备 都可以对系统进行访问。 随着2 l 世纪知识经济时代的来临,知识已成为经济增长和社会发展以及企 业成长的关键性资源,最大限度地掌握和利用知识已经成为企业信息化建设的核 心。对知识前所未有的重视使以工作流为中心的办公自动化系统面临着严竣的挑 战。在知识经济时代,企业与机构不仅要求员工对所要实施任务目标能够“知其 然”,更要求员工,特别是管理者,能够“知其所以然”。在这种背景下,办公自 动化领域不可避免地孕育着一场新的革命:从以工作流程为中心的第二代办公自 动化系统提升到以知识管理为核心的第三代办公自动化系统。 第三代办公自动化系统是融信息处理、业务流程和知识管理于一体的应用系 统。它以知识管理为核心,提供丰富的学习功能与知识共享机制,确保使用者能 随时随地根据需要向专家学习、向企业现有知识学习,使员工在办公自动化系统 中的地位从被动向主动转变,有效的提高企业运作效率。 回顾办公自动化系统的发展过程,我们不难发现办公自动化系统的发展恰好 与数据、信息和知识的演变同步,即由以数据为主要处理内容的第一代办公自动 化发展到以信息为主要处理内容的第二代办公自动化,再发展到以知识为主要处 理内容的第三代办公自动化。 1 2 办公自动化系统的现状与前景 1 2 1 办公自动化系统的现状 办公自动化系统正处于从第二代到第三代过渡的变革时期,与第一代比较有 了长足的发展。具体表现在开发技术日新月异、新兴产品不断涌现,服务领域日 益扩展。 o a 系统数据交换层的设计和基于d o m i n o 的实现 第一章引言 近年来开发技术日新月异,d c o m 技术、j 2 e e 技术、n e t 技术、x m l 技术、 w e b 服务纷纷走上开发舞台。这些技术在办公自动化系统中已经开始应用,同时 传统的群件平台也不断更新变化,办公自动化系统的开发技术呈现出一种令人欣 喜的繁荣局面。 在需求和技术的直接推动下,成熟的商业产品不断涌现。除了传统的办公自 动化系统提供商i b m 等企业外,不少新兴的软件企业投入到办公自动化系统的开 发中来。仅国内市场,就有用友、金蝶、北京慧点,深圳蓝凌等数百家企业从事 办公自动化系统的开发与研究,并推出了相应的商业化产品。 同时,办公自动化系统的服务领域有了较大的扩展。除了政府机关、科研机 构等传统的服务领域外,办公自动化系统在金融、电力、能源、交通、医药等行 业等得到了广泛的应用。并且众多办公自动化系统提供商推出了面向中小型企业 的应用方案,这将使得办公自动化系统的服务领域更加广阔。 1 2 2 办公自动化系统的前景 办公自动化系统正在向第三代过渡,面向知识管理的办公自动化系统将成为 新一代办公自动化系统发展的主流。 知识管理实际上就是当组织面对的环境快速变化时,为了满足组织提高适应 力、生产力和竞争能力的需要,寻求将组织处理数据和信息的能力同组织成员的 创造与革新能力结合起来的一种过程0 3 1 。它是以知识为核心,对企业生产和经营 所依赖的知识有效地识别、获取、开发、分解、使用、存储和共享等一系列过程 的管理。 第三代o a 系统需要具备下面几个功能:用户实时通信、专家实时交流、信 息广泛集成和知识门户建设。信息广泛集成和知识门户建设需要办公自动化系统 和其他系统进行数据集成,这种集成体现在数据共享和交换、文档的流转以及系 统单点登录等方面。 1 3 办公自动化系统存在的问题 1 3 1 信息孤岛问题 办公自动化领域也存在着一些不足,信息孤岛就是较为突出的一个问题。现 第一章引言 o a 系统数据交换层的设计和基于d o m i n o 的实现 存的办公自动化系统是不同时期、由不同的公司、利用不同的工具、在不同的平 台上开发而成,系统之间存在着较大的差异。 虽然在物理网络上,办公自动化系统之间可以通过相应的网络设备和网络协 议实现连接,但是由于缺乏统一的数据交换规范和机制,使得许多系统的数据只 能在本系统内使用,而不能与其他系统实现数据交换、文档流转和信息共享。这 就使得众多办公自动化系统在客观上成为了独立于其他系统的“信息孤岛”。 1 3 2 信息孤岛产生的原因 产生信息孤岛的原因很多,在办公自动化领域,系统的异构性、数据的封闭 性和缺乏数据规范是三个重要的原因。下面简单的介绍这三个原因: ( 1 ) 办公自动化系统的异构性 办公自动化系统的实施是伴随着办公自动化整个发展过程的,因此办公自动 化系统是在不同时期,由不同公司利用不同的技术开发而成。正因为如此,形成了 办公自动化系统的异构特征,这些异构特征包括计算机体系结构异构、操作系统 异构、数据库系统异构和系统应用架构异构等。 a ) 计算机体系结构异构 中小型的办公自动化系统可以采用基于w i n t e l 体系结构的服务器甚至p c 机作为服务器。但是对于大型的办公自动化系统,尤其是政府机关等重要部门的 办公自动化系统,在系统的安全性稳定性上有较高的幕求,一般要采用较高配置 的服务器甚至小型机。硬件层次的异构往往导致了服务器操作系统和数据库系统 的异构。 b ) 操作系统异构 常见的办公自动化系统可以运行在不同的操作系统上,如l o t u s d o m i n o n o t e s 和j a v a 软件可以运行在u n i x 、w i n n t 和l i n u x 系统上,而采用 e x c h a n g e 和d e l p h i 等技术开发的系统只能运行在w i n n t 平台上。 操作系统对于运行在其上的应用程序而言其影响是深刻的,不同的操作系统 提供了不同的系统接口供应用程序和开发人员调用,这些系统接口各不相同,也 是系统异构的重要体现。 c ) 数据库系统异构 办公自动化系统的数据库涵盖了当前市场上常见的各种数据库类型。 4 o a 系统数据交换层的设计和基于d o m i n o 的实现第一章弓| 言 按照数据库类型来分,主要分为文档型数据库和关系型数据库。文档型数据 库的代表主要是l o t u sd o m i n o n o t e s ,关系型数据库的产品较多,常见的有i b m 公司的d b 2 ,甲骨文公司的o r a c l e ,微软公司的s q l s e r v e r 和s y b a s e 、i n f o r m i x 等产品。 不同的数据库产品在系统构成、功能和性能上也存在着显著的差别,如数据 库支持的数据类型和数据格式不完全相同,支持的数据操作不尽一致,对s q l 语言的扩展存在差异等。 d ) 系统应用架构异构 办公自动化系统在应用架构上有c s 和b s 之分。 c s 结构又称c 1 i e n t s e r v e r 或客户端服务器结构。服务器端通常采用高 性能p c 、工作站或小型机,利用大型数据库系统。客户端需要安装专用的客户 端软件。 c s 结构能充分的运用客户端计算机的处理能力,具有较快的响应速度,安 全性和稳定性较好。但由于客户端需要安装专门的软件,在系统升级和维护时有 较大的工作量,同时对客户端平台的选择有一定的要求。 b s 结构又称b r o w s e r s e r v e r 或浏览器服务器结构。在客户机上只要安装 一个浏览器。浏览器通过w e bs e r v e r 同数据库进行数据交互。 同c s 结构相比,b i s 结构具有平台无关性的特点。在客户机上,只需要存 在浏览器程序即可使用系统,而与系统的具体平台无关。同时由于浏览器代替了 客户端程序,在系统升级和维护时,只需要对服务器端进行升级和维护,大大减 轻了程序开发人员和系统维护人员的负担。 近年来,随着w e b 应用的不断普及,系统开发正在从c s 向b i s 结构过渡, 越来越多的办公自动化系统开始采用b s 结构进行开发。 综上所述,我们可以看到在办公自动化系统在诸多方面存在着异构的特性。 这种异构特性是由于历史、技术等多方面原因造成的,这在客观上造成了数据交 换的困难,成为信息孤岛产生的一个客观原因。 ( 2 ) 数据的封闭性 数据的封闭性是造成信息孤岛普遍存在的一个重要原因。人们认识事物是要 有个渐进的过程的,这一点在办公自动化系统的设计上显得尤其突出。在第一 代办公自动化系统设计与实施的过程中,人们主要要完成的是纸质的信息电子 5 第一章g i 言 o a 系统数据交换层的设计和基于d o n u n o 的实现 化,使用计算机来处理日常的办公事务,在这个阶段存在的是从计算机外向计算 机内部传输数据的过程,没有牵涉到不同系统的问题。 到第二代办公自动化系统逐步流行时,人们关心的问题是一个系统内部的文 档如何正确高效的流转,一个系统内部的各个模块之间数据如何交换。这个阶段 问题集中在单个办公自动化系统之间,也没有牵涉到更多的异构系统。 正因为当时的条件的限制和人们对办公自动化技术的认识的局限,第一代和 第二代办公自动化系统在设计和实现时大都没有充分考虑到和其他办公自动化 系统交换数据的问题,自身系统的数据只在本系统中传输和使用,与其他系统不 产生联系和交互,无形中产生了数据的封闭性。正如千年虫问题一样,在早期没 有发现其危害性,但当事物发展到一定的阶段,问题才逐渐开始暴露并造成了一 定的危害。 ( 3 ) 缺乏数据规范 随着对办公自动化系统的研究的不断深入,人们逐步认识至q 信息孤岛问题的 严重性。但是由于办公自动化系统没有统一的完整的国际标准和规范。各种实现 技术对数据的要求不尽相同。即使是同样的设计方案,不同技术的实现有不同的 处理方式,同样会造成最终的应用系统之间出现数据交换的障碍。因此缺乏数据 规范,也是产生信息孤岛问题的一个重要原因。 1 3 3 信息孤岛的影响 办公自动化系统中“信息孤岛”的存在,对系统有一定的影响,这些危害在 一些情况下可能造成较大的损失,这些影响包括【0 5 1 : ( 1 ) 数据的一致性无法保证; ( 2 ) 数据信息无法及时共享; ( 3 ) 数据信息冗余量大; ( 4 ) 数据信息需重复多次的输入,易造成数据的失真。 1 4 课题的内容及其意义 如上所述,信息孤岛是办公自动化领域现实存在的一个问题,如何有效加以 解决,避免其危害,提高办公自动化系统的效率,是一个急切需要思考和解决的 o a 系统数据交换层的设计和基于d o m i n o 的实现 第一章引言 问题。 本课题要研究办公自动化系统的数据交换问题,探索在已有的办公自动化系 统上建立一个对外交换数据的途径。 课题研究的内容主要有两个方面: ( 1 ) 在现有的技术基础上,探索建立一个办公自动化系统的数据交换层,完 成与其他办公自动化系统之间的数据交换,有效解决信息孤岛问题; ( 2 ) 在一个具体的平台上实现上述的数据交换层,为今后相应系统和模块的 开发提供指导与参考。 本课题研究的内容具有理论和现实的双重意义。 首先可以在建立数据交换层的模型的过程中,在理论上对现实问题进行分析 和研究,给出解决信息孤岛问题的一般思路,具有一定的理论意义。然后通过在 具体平台上实现数据交换层,能有效的解决原系统存在的数据交换问题,又具有 一定的现实意义。 其次,根据国际知名的i t 咨询公司m e t a g r o u p 的调查,一家典型的大型企 业平均拥有4 9 个应用系统。这些系统绝大多数存在信息孤岛问题。通过本课题 的研究,可以将数据交换层的设计原理和实现方案推广到与其他系统的集成中。 实现办公自动化系统与e r p 系统、财务系统、业务系统、客户管理等系统的数据 交换,探索第三代办公自动化系统中信息集成和门户建设的一般方法,具有较强 的现实意义。 1 5 本文的组织结构 本文的具体结构安排如下:第一章,给出课题背景,课题内容以及课题意义; 第二章,介绍本课题的相关技术点,为后续的章节做好技术方面的准备工作;第 三章,介绍数据交换层的逻辑设计,给出了数据交换层的层次结构和模块划分, 并对主要模块进行了概要设计:第四章和第五章,详细介绍数据交换层在l o t u s d o m i n o n o t e s 环境下的实现,对常见的技术进行了初步的比较和选择,并给出 了部分重点算法和程序的代码:第六章,对本课题的研究成果给出结论,并对下 一步开发工作的要点进行了讨论。 第二章技术背景o a 系统数据交换层的设计和基于d o m i n o 的实现 第二章技术背景 本章对本文中使用的主要技术w e b 服务、x m l 技术和l o t u sd o m i n o n o t e s 平台做一个简单的介绍。 2 1w e b 服务 2 1 1 什么是w e b 服务 1w e b 服务的产生 近年来,基于w e b 的应用有了长足的进步。早期,人们通过w e b 站点发布 信息。随着c g i 、a s p 、p h p 等技术的兴起,由w e bs e r v e r 和d a t a b a s es e r v e r 组成的两层结构的w e b 应用逐步流行。针对两层结构的系统在吞吐率和实现效 率上存在不足,人们在w e bs e r v e r 和d a t a b a s es e r v e r 之间加入了a p p l i c a t i o n s e r v e r ,从而实现了表现层、逻辑层和数据层三层的分离。在服务部署时这三层 分别和w e bs e r v e r 、a p p l i c a t i o ns e r v e r 和d a t a b a s es e r v e r 相对应。在大型复杂的 应用中,还可以将逻辑层加以细化,形成一个n 层的w e b 应用。 在这种基础上,人们探索不同组件系统之间的互操作,结合传统的d c o m 、 c o b r a 技术,在h t t p 、x m l 、s o a p 等技术的基础上,提出了w e b 服务的概 念,并将w e b 服务予以规范化,使其成为一个新兴的技术点。 2 w e b 服务的定义 w e b 服务( w 曲s e r v i c e ) 是近年来技术的一个新亮点,是下一代w e b 应用 的主要方式。根据w 3 c 的定义,w e b 服务是通过网络实现计算机之间互操作 的一个软件系统。w e b 服务在一个适合机器处理的文档中定义其接口,如w s d l 等。一般的,计算机系统根据相关w e b 服务标准,先获取w e b 服务的描述,再 使用s o a p 消息通过h t t p 协议和序列化的x m l 调用w e b 服务两】。w 3 c 给出 的是w e b 服务的本质定义,从不同的角度观察w e b 服务还有不同的表现形式。 从应用程序的角度来看,w e b 服务是一个应用程序,它向外界暴露出一个可 供调用的a p i ,开发人员可以使用编程的方法,通过w e b 方式调用w e b 服务。 更深层次的理解是,w e b 服务是一种新的w e b 应用程序,它是自包含、自描述、 模块化的应用,可以在网络( 通常为w e b ) 中,被描述、发布、查找以及通过 o a 系统教据交换层的设计和基于d o m i n o 的实现第二章技术背景 w 曲来调用。 从组件角度来看,w e b 服务是基于网络的、分布式的模块化组件,它执行特 定的任务,遵守具体的技术规范,这些规范使得w e b 服务能与其他兼容的组件 进行互操作。 从企业的角度来看,w e b 服务又有另外一种定义:所谓w e b 服务,是指由企 业发布的完成其特别商务需求的在线应用服务,其他公司或应用软件能够通过 i n t e r n e t 来访问并使用这项应用服务0 7 1 。 3w e b 服务模型 w e b 服务体系结构基于三种角色( 服务提供者、服务注册中心和服务请求者) 之间的交互。交互涉及发布、查找和绑定操作嗍。图2 1 是对w e b 服务模型和 角色的描述。 图21w e b 服务模型与角色【饷1 在典型情况下,服务提供者托管可通过网络访问的软件模块( w e b 服务的 一个实现) 。服务提供者定义w e b 服务的服务描述并把它发布到服务请求者或 服务注册中心。 服务请求者使用查找操作来从本地或服务注册中心检索服务描述,然后使用 服务描述与服务提供者进行绑定并调用w e b 服务实现或同它交互。图2 1 描述 了这些操作、提供这些操作的组件及它们之间的交互。 4 w e b 服务的角色 w 曲服务有三种角色,服务提供者、服务注册中心和服务请求者,如图2 1 9 第二章技术背景 o a 系统数据变挟层的设计和基于d o m i n o 的实现 所示。这三种角色之间的交互完成了整个服务的过程 0 8 1 。下面分别从企业和体 系结构的角度予以解释。 服务提供者:从企业的角度看,这是服务的所有者。从体系结构的角度看, 这是托管访问服务的平台。 服务请求者:从企业的角度看,这是要求满足特定功能的企业。从体系结构 的角度看,这是寻找并调用服务,或启动与服务的交互的应用程序。服务请求者 角色可以由浏览器来担当,由人或无用户界面的程序( 如另外一个w 曲服务) 来控制它。 服务注册中心:这是可搜索的服务描述注册中心,服务提供者在此发布他们 的服务描述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得 服务的绑定信息。对于静态绑定的服务请求者,服务注册中心是体系结构中的可 选角色,因为服务提供者可以把描述直接发送给服务请求者。同样,服务请求者 可以从服务注册中心以外的其它来源得到服务描述,例如本地文件、f t p 站点、 w e b 站点、广告和服务发现( a d v e r t i s e m e n ta n d d i s c o v e r y o f s e r v i c e s ,a d s ) 或 发现w e b 服务( d i s c o v e r yo f w e bs e r v i c e s ,d i s c o ) 。 5w e b 服务概念性协议栈 图2 2w 3 c 提供的w e bs e r v i c e sa r c h i t e c t u r es t a c k 图【明 图2 2 是w e b 服务概念性协议栈。w e b 服务协议栈的基础是网络层。w e b 服 1 0 o a 系统数据交换层的设计和基于d o r 血n o 的实现第二章技术背景 务要被服务请求者调用,就必须是可以通过网络访问的。因特网上提供的w e b 服务通常使用常见的网络协议。h t t p 凭借其普遍性,成为了因特网上w 曲服 务最常见的网络协议。w e b 服务还可以支持其它因特网协议,包括s m t p 和 f t p 等。 从w e b 服务概念性协议栈可以看出,w e b 服务在消息层采用了基于x m l 的s o a p 协议,在描述层使用了w s d l ( w 曲s e r v i c e sd e s c r i p t i o nl a n g u a g e ) , 下面的两小节将分别介绍s o a p 和w s d l 。 2 。1 2s o a p 简介 如图2 2 所示,s o a p 在w e b 服务堆栈中作为消息传递的一种最常用的协议, 在整个w e b 服务中发挥着十分重要的作用。 1 什么是s o a p s o a p ( s i m p l e 0 b e c ta c c e s sp r o t o c o l 简单对象访问协议) 是在分散或分布 式的环境中交换信息的简单的协议,是一个基于x m l 的协议。s o a p 协议设计 的主要目的即为了在一个松散的、分布的环境中使用x m l 对等的交换结构化和 类型化的信息。 s o a p 的两个主要设计目标是简单性和可扩展性,它基于x m l 技术实现, 是一个开放的标准,主要包括四个部分: ( 1 ) s o a p 封装( e n v e l o p ) ,封装定义了一个描述消息中的内容是什么,是 谁发送的,谁应当接受并处理它以及如何处理它们的框架; ( 2 ) s o a p 编码规则( e n c o d i n gr u l e s ) 用于表示应用程序需要使用的数 据类型的实例; ( 3 ) s o a pr p c 表示( r p cr e p r e s e n t a t i o n ) ,表示远程过程调用和应答的协 定: ( 4 ) s o a p 绑定( b i n d i n g ) ,使用底层协议交换信息。 2s o a p 消息的结构定义 第二章技术背景 o a 系统数摄交换层的设计和基于d o m i n o 实现 ,s o a p 消息是由一个强制的s o a p e n v e l o p e 、一个可选的s o a p h e a d e r 和 一个强制的s o a p b o d y 组成的x m l 文档。s o a p 消息结构如图2 3 所示,详情 请参阅文献 0 7 2 2 】。 图2 3s o a p 消息结构图 s o a p 结构各部分的主要功能如下: s o a p e n v e l o p e 。e n v e l o p e 表示该信息的x v l l 文档的顶级元素 s o a ph e a d e r 。h e a d e r 是为了在松散环境下在通信方之间尚未预先达成 一致的情况下,为s 0 a p 消息增加特性的通用机制。 s o a p b o d y 。b o d y 为该消息的最终接受者所想要得到的信息提供了一个 容器。 3s o a p 在w 曲服务中的作用 根据w 3 c 提供的w e bs e r v i c e sa r c h i t e c t u r es t a c k 图,图2 2 ,s o a p 在 w e b 服务中起一个十分重要的作用,它是w e b 服务信息传输的载体,之所以选 择s o a p 作为w e b 服务信息传输的载体,主要的原因如下: 它是使用x m l 传送以文档为中心的消息以及远程过程调用的标准化 封装机制; s o a p 很简单,它基本上是一个用x m le n v e l o p 作为有效负载的 h r r pp o s t 。 s o a p 消息支持w e b 服务体系结构中的发布、查找和绑定操作。 4 s o a p 消息示例 1 2 o a 系统数据交换层的设计和基于d o m i n o 的实现第二章技术背景 下面是本系统中用于请求公文信息的一段s o a 2 消息,这个例子使用h t t p 协议作为底层的传输协议,向w e b 服务提交一个公文的d ,返回一个以x m l 格式封装的公文信息。 p o s ti d o w n a r c h i v e sh t t p 1 1 h o s t :a r c h i v e s j s e p c c o m c n c o n t e n t - t y p e :t e x t x m l ;c h a r s e t = u t f - 8 c o n t e n t - l e n g t h :8 0 9 s o a p a c t i o n :。h t t p :a r c h i v e s i s e p c c o m c n d o w n a r c h i v e ( ? x m iv e m i o n :。1 口e n c o d i n g :u f f - 8 ? ) 2 0 0 4 0 1 2 0 0 0 2 ( s o a p :b o d v 下面是对这个请求信息的响应消息 h t t p 1 12 0 0 0 k c o n t e n t - r y t o e :t e x t x m l ;c h a m e t = u f f - 8 c o n t e n t - l e n g t h :5 7 7 8 娟0 a p :b 0 d v 2 1 3w s d l 简介 如图2 2 所示,w s d l 在w e b 服务中起一个描述w e b 服务的作用。 根据w 3 c 在给出的定义,w s d l 是w e bs e r v i c e s d e s c r i p t i o n l a n g u a g e ( w e b 服务描述语言) 的简称,它以x m l 格式提供了一种描述w e b 服务的方法】。 w s d l 在w e bs e r v i c e s a r c h i t e c t u r es t a c k 起一个描述层的作用,简单的说, w s d l 主要要完成下面的功能: 提供什么服务 如何调用该服务 第二章技术背景o a 系统数据交换层的设计和基于d o m i n o 的实现 调用该服务时,该业务服务需要用户提供什么信息 用户如何提供服务所必需的信息 服务以什么格式发送返回给用户的信息 w s d l 结构在w 3 c 的文献中给出了详细的说明,详情请参阅参考文献【0 9 】。 2 1 4w e b 服务的用途 w e b 服务一个重要的特点就是其平台无关性。正是由于这个特点,使得w e b 服务在众多企业级解决方案中得以应用。利用w e b 服务主要能解决两个问题: i n t r a - e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n 和i n t e r - e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n 。 i n t r a - e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,也称b 2 b 整合,即b u s i n e s s t o b u s i n e s s i n t e g r a t i o n 。目前,在众多的企业中存在不少基于w e b 的应用,但这些应用常常 存在信息孤岛问题。跨越不同企业不同系统的整合是当前数据集成领域的重要研 究课题,传统的数据集成方法有一定的局限性和复杂性,而w e bs e r v i c e s 则提供 了一个通用而标准的方式,使得跨越企业和系统的整合成为可能。 i n t e r - e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,也称a p p l i c a t i o n - t o - a p p f i c a t i o n i n t e g r a t i o n 即a 2 a 整合。随着信息化的不断深入,众多企业已经开发出适合内部 不同部门使用的系统。如运营部门的生产管理系统,销售部门的客户关系系统、 人力资源部门的人力资源管理系统等。不同语言在不同时间编写出来的软件混合 运行在不同的系统上。许多企业组织最困难的问题就是如何将现有应用程序连接 在一起。而w e b 服务则为这种整合需求提供了一个有效的解决方案。 2 2x m l 技术 2 2 i x m l 的定义 x m l ( e x t e n s i b l em a r k u p l a n g u a g e ) 是一种具有数据描述功能、高度结构性 及可验证性的语言。x m l 源于s g m l ,具有简单和灵活的特点。它最初的设计是 为了满足大规模的电子出版的需要。 x m l 具有良好数据存储格式、可扩展性、高度结构化、便于网络传输的特 点。x m l 具有很强的数据描述能力和自描述性,已经成为w e b 和其他领域大规 模的数据交换的重要标准,是近年来技术研究和商业应用的热点之一。 1 4 o a 系统数据交换层的设计和基于d o m i n o 的实现第二章技术背景 x m l 是一个巨大的技术主题,其下有x s l ,验证规t ( d t d 与x m ls c h e m a ) , d o m ,s a x ,x l i n k ,x p a t h ,x p o i n t e r ,j d o m 等众多的技术点。本系统中主要 使用的有d t d 、d o m 和s a x 技术,下面分别予以简要的介绍。 2 , 2 2 d t d 简介 d t d 是d o c u m e n t t y p ed e f i n i t i o n ( 文档类型定义1 的简称,它是一套关于标记 符的语法规则。d t d 原来是为使用s g m l 开发的,x m l 中也使用d t d 作为文 内容的规则。d t d 可以是x m l 文档的一部分,内嵌在x m l 文档中使用。但是更 多的情况下,它一份或多份独立的文档。d t d 髓够标识在x m l 文档中可以使用 的标记符、标识符出现的前后次序、标识符之间的相互关系以及标记符的属性定 义等。 根据文档与x m l 语法和d t d 之间的关系,可以将x m l 文档划分成以下三 种: 无效文档: 有效文档: 没有遵守x m l 规范定义的语法规则的文档 或者在已经定义d t d 的条件下,没有遵守d t d 的定义要求的文档; 既遵守x m l 语法规则也遵守在其d t d 定义的 规则的文档; 格式良好的文档:遵守x m l 语法,但没有d t d 的文档。 2 2 3 d o m 简介 x m l 技术为开发人员提供了丰富的编程接口。通过这些接口,开发人员能 够对将x m l 的强大的数据描述能力和自描述性特点运用到系统设计之中。d o m 和s a x 是常见的两种编程接口。 d o m 是d o c u m e n to b j e c tm o d e l ( 文档对象模型) 的缩写,是w 3 c 推荐的 一种标准。 根据w 3 c 的定义,d o m 是一个平台和语言无关的接口,它允许程序和脚 本动态的访问存取x m l 文档的内容、结构和风格【i o 】。 d o m 是x m l 文档的一种编程接口规范,由于它具有平台和语言无关性, 因而可以用各种语言在各种平台上实现。该模型通过解析器读入x m l 文档,构 第二章技术背景 o a 系统数据变换层的设计和基于d o m i n o 的实现 建一个驻留内存的树结构,然后应用逻辑就可以使用d o m 接口来操作树结构。 通过对树结构的遍历、添加、删除完成对x m l 文档的操作。 由于d o m 是将整个x m l 文档在内存中构建一个树结构,也存在着一定的 问题,如: d o m 构建整个文档驻留内存的树。若文档很大,就会要求有极大的内 存。 d o m 创建表示原始文档中所有的对象,包括元素、文本、属性和空白。 即使只需关注原始文档的部分内容,也必须为整个文档创建对象树。 d o m 解析器必须在应用逻辑取得控制权之前读取整个文档。对于非常 大的文档,这会引起显著的延迟。 虽然d o m 存在这些问题,但由于它功能强大,加上w 3 c 和众多技术对它 的支持,它仍然是解析x m l 文档一种常见的方法。 2 2 4s a x 简介 s a x 是除d o m 以外另一个十分常用的x m l 编程接口。s a x 是s i m p l ea p i f o r x m l 的简写。和d o m 不同,s a x 是由x m l - d e v 邮件列表的成员开发的, 基于j a v a 的x m l 编程接口,现在可以用于p y t h o n 、p e r l 、c + + 和c o m ( w i n d o w s 对象) 等多种技术。其主要的设计目的就是避免d o m 在系统开销上的问题i ”】。 s a x 是以事件驱动的方式对x m l 进行解析。其基本思想是由s a x 解析器 解析x m l 文档,在解析的过程中根据当前处理对象的属性,向一个事件处理程 序发送事件。事件处理器则根据事件类型处理该信息,实现所需要的解析功能。 s a x 技术虽然不是w 3 c 官方推荐的技术,但是由于它实现较为简单,系统消耗 小,已经成为d o m 外另一个重要的解析w e b 文档的方法。 2 3l o t u s d o min o n o t e s 系统介绍 2 3 1l o t u sd o m i n o n o t e s 简介 l o t u s 系列软件是m m 整体解决方案的核心技术产品。它在通讯平台、电子 商务、电子政务、协作和知识管理、e l e a r n i n g 和无线应用等领域有着广泛的应 用。和i b m 公司的其他产品如d b 2 、w e b s p h e r e 、t i v o l i 等构成了i b m 的e - b u s i n e s s o a 系统数据交换层的设计和基于d o m i n o 的实现 第二章技术背景 整体企业级的解决方案,如图2 4 所示: 图2 4 旧me - b u s i n e s s 战略 l o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 项目成本控制与预算调整表
- 2025年北师大版六年级下册数学“希望杯”公益选拔赛试题及答案
- 家庭养老服务保证承诺书7篇范文
- 2025年九年级数学实验班选拔考试试题含答案
- 互联网技术产品经理项目绩效表
- 会议高效组织与策划操作手册
- 环保科技公司市场推广人员绩效评定表
- 2025年中国直流无刷电机行业市场现状、前景分析研究报告(智研咨询发布)
- 项目财务预算审批流程模版
- 寝室门牌购买协议书
- 2026年素质教育课程合作合同
- 中国银联校园招聘在线测试考试笔试内容科目历年真题
- 防校园欺凌安全教育课件
- 2025年环境科学相关职位岗位招聘面试参考题库及参考答案
- 工程人员转型物业管理方案
- 2025中国诚通所出资企业招聘344人笔试历年典型考点题库附带答案详解试卷3套
- 2025年医疗废物管理制度试题及答案
- 完型填空15篇(浙江专用)(期末题型考前过关练)-2023-2024学年八年级英语上册单元模块满分必刷题(人教版)
- 公路交通运营管理与服务质量提升
- 《愚公移山》文学作品分析与感悟
- 2024年全国职业院校技能大赛ZZ052 大数据应用与服务赛项规程以及大数据应用与服务赛项赛题1-10套
评论
0/150
提交评论