(计算机应用技术专业论文)基于服务网络的web+service开发工具的设计与实现.pdf_第1页
(计算机应用技术专业论文)基于服务网络的web+service开发工具的设计与实现.pdf_第2页
(计算机应用技术专业论文)基于服务网络的web+service开发工具的设计与实现.pdf_第3页
(计算机应用技术专业论文)基于服务网络的web+service开发工具的设计与实现.pdf_第4页
(计算机应用技术专业论文)基于服务网络的web+service开发工具的设计与实现.pdf_第5页
已阅读5页,还剩46页未读 继续免费阅读

(计算机应用技术专业论文)基于服务网络的web+service开发工具的设计与实现.pdf.pdf 免费下载

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

文档简介

摘要 随着s o a 和w e bs e r v i c e 的应用不断深入,u d d i 注册中心作为服务管理平 台的缺陷逐渐得到人们的认识。服务网络是一个基于本体的,以描述服务语义和 服务间关系为基础的w e b 服务管理平台。 基于服务1 ) c ) 4 络对服务查找、服务语义的支持,应用软件工程复用思想,设计 了一个w e bs e r v i c e 的开发方法,并基于e c l i p s e 平台,实现了支持此开发方法的 开发工具。该工具以友好的u i 交互方式,通过复用服务网络中已有服务的w s d l 文档,让服务开发者方便地创建所要开发全新服务的w s d l 文档。并通过文档 注释的方法,在此w s d l 文档中嵌入语义关键字和复用相关信息,使服务网络 中抽象服务和具体服务、具体服务和具体服务之间的关系在服务开发中得到体 现。复用服务网络中服务的关键字,在开发过程中提供给开发者命名提示,使服 务发布时能够更好的被服务网络解析。 综上,基于某一特定服务管理平台的w e bs e r v i c e 开发方法,使开发者可以 利用现有的服务和语义信息,应用复用的思想,快速、规范地开发自己所需求的 服务,并在此服务的w s d l 文档中添加语义与关系信息。对于w c b 服务开发的 多样性、规范性问题提出了一个解决办法,并对未来规模化、软件化的w e b 服 务开发有着积极意义。 关键词:服务开发服务网络服务重用w s d l 开发 a b s t r a c t w i t ht h ea p p l i c a t i o no ft h es o aa n dw e bs e r v i c eu p d a t i n gq u i c k l y ,t h e w e a k n e s s e so fu d d ir e g i s t r yc e n t r e ,a sas e r v i c em a n a g e m e n tp l a t f o r m , a l eg r a d u a l l y a c q u a i n t e d t h es e r v i c en e t w o r ki saw e b s e r v i c em a n a g e m e n tp l a t f o r m ,w h i c hi s b a s e do i ld e s c r i b i n gt h er e l a t i o na n ds e m a n t i c so fs e r v i c e s t h es e r v i c en e t w o r ks u p p o r t st h es e r v i c es e a r c h i n ga n ds e r v i c es e m a n t i c s ,u n d e r t l l i sf i l n c t i o n w eu s et h ei d e ao fs o f t w a r ee n g i n e e r i n gt od e s i g naw e b s e r v i c e d e v e l o p i n gm e t h o d ,a n db a s eo nt h e e c l i p s e p l a t f o r m ,w ew o r k e d o u tad e v e l o p i n g t o o lt os u p p o at h em e t h o d u s i n gaf r i e n d l yu ii n t e r a c t ,a n dt h ew s d ld o c u m e n t i i e u s ei n 也es e r v i c en e t w o r k ,t h es e r v i c ed e v e l o p e r sc o u l de a s i l yc r e a t ead e s i r a b l e n e ws e i c ew s d ld o c u m e n t ,i nt h ew a yo fi n t e r p r e t a t i o no ft h ed o c u m e n tw h i c h i n s e f ts e m a n t i ck e y w o r d sa n dr e u s er e l e v a n ti n f o r m a t i o ns ot h a tt h er e l a t i o nb e t w e e n t h ea b s t i a c ts e r v i c ea n dc o n c r e t es e r v i c ea n da m o n gc o n c r e t es e r v i c et h e m s e l v e sc o u l d b ea c m a l i z e dd u r i n gt h es e r v i c ed e v e l o p m e n t t h ek e y w o r d sr e u s e df r o mt h es e r v i c e n e t w o r kc o u l do f f e rt h er e l e v a n ti n f o r m a t i o n a b o u tn o m i n a t i n gs e r v i c et ot h e d e v e l o p e r s w h e nt h e s es e r v i c e sa r eo f f e r e d ,t h e yc o u l db eb e t t e ri n t e r p r e t e db y t h e s e r v i c en e t w o r k f r o ma b o v em e n t i o n e d ,t h ew e bs e r v i c ed e v e l o p i n gm e t h o do nas p e c i a l i z e d s e r v i c em a n a g e m e n tp l a t f o r mo f f e r st h ed e v e l o p e r st ou s et h e i rp r e s e n ts e r v i c e sa n d s e m a n t i ci n f o r m a t i o na n dt oa p p l yi d e o l o g yo fr e u s i n g ,s ot h a tt h e yc o u l dd e v e l o p t h e i ro w ns e r v i c e sq u i c k l ya n dn o r m a l l y t h em e t h o da d d ss e m a n t i c a n dr e l a t i o n i 1 1 f o n n a t i o ni n t ot h ew s d ld o c u m e n t s i to f f e r s as o l u t i o na b o u tv a r i e t ya n d n o r m a l i t yp r o b l e m si nt h ew e bs e r v i c ed e v e l o p m e n t i ti s a l s ov e r yh e l p f u la n d m e a n i n g f u lt ot h el a r g e s c a l ea n ds o f t w a r ee n g i n e e r i n go nd e v e l o p i n gw e b s e r v i c ei n f u t u r e k e yw o r d s :s e r v i c ed e v e l o p i n g ,s e r v i c en e t w o r k , s e r v i c er e u s e ,w s d l d e v e l o p i n g 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得墨鲞苤鲎或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:i f 劬 i 签字日期:护9 年占月中日 学位论文版权使用授权书 本学位论文作者完全了解鑫姿盘堂有关保留、使用学位论文的规定。 特授权鑫洼态堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:7 舢 签字日期: c f 年6 月丫日 导师签名: 婵醐:7 “肝日 第一章绪论 1 1 研究背景 第一章绪论 近年来$ o a 的思想【1 】深入人心。w e bs e r v i c e 作为最为体现s o a 思想的应 用之一 2 1 ,由于它自身的能够被描述并通过网络发布、发现和调用,自包含、自 描述、松散耦合的特性,得到了越来越广泛的应用,对于w c bs e r v i c e 应用方面 的研究方兴未艾【3 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 是基于网络,平台不相关的x m l 规范的发现、 集成与调用的,这样更使得开发方式越来越多样化。 伴随着如今语义w e b l 4 的提出,多样化的开发方式与u d d i 服务注册中心【5 】1 6 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 的方法,可以应用c 、c + + 、 j a v a 、n e t 等语言,可以应用多种服务器,应用s o a pt o o l k i t ,a x i s 2 ,x f i r e 多种开发工具【7 】【8 】【9 】。 而这些开发方法在开发w e bs e r v i c e 的同时,并没有考虑所开发的服务如何 应用,如何在注册中心中更容易被人访问。在开发方式中一般只是考虑到开发者 的使用习惯,更友好的u i 交互方式,而对于如何复用已有的服务、如何与已有 的服务建立关系的研究知之甚少。人们希望能拥有一种能够符合软件工程开发原 则的w e bs e r v i c e 开发方法,充分利用代码的重用和规范的描述。这样才能为大 规模发展的w e bs e r v i c e 技术提供良好的基础。 1 2 本文主要研究内容 本文的主要研究内容是基于服务网络的w e bs e r v i c e 开发方法与支持此开发 方法的工具实现。着重研究复用和继承已有的服务,开发以w s d l 描述的服务 接口。这些是基于一个语义服务注册中心( 服务网络) 来完成。 第章绪论 本文的主要工作内容包括: 基于服务网络开发w e bs e r v i c e 开发方法的设计。 基于e c l i p s e 平台插件工具的整体实现。 w s d l 文档的建模和生成:应用台适的算法来通过模型生成w s d l 代码。 可视化的编辑:采用s 、t 提供可视化的界面开发。 复用开发策略:如何应用服务网络,以及继承现有服务的开发。 在开发过程中对语义关键字的处理。 1 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 的可行性。 第三章,基于服务网络的w e bs e r v i c e 开发工具系统设计。介绍了工具的详 细设计,介绍各个模块的功能,介绍了w s d l 基础上开发的核心作用,以及如 何应用接口复用和语义复用来开发w e bs e r v i c e 的过程。 第四章,基于服务网络的w e bs e r v i c e 开发工具工程实现。介绍如何应用第 三章的设计来具体实现工具的。应用技术与工程问题解决,包括向导扩展、对话 框设计与交互、w s d l 文档生成等。 第五章,w e bs e r v i c e 开发的应用,介绍了一个具体的开发场景,应用继承 和复片j 的思想来完成一个全新服务的开发,并如何在服务网络中展示开发后服务 的优势。 第六章,总结与展望,介绍了本文所提出的开发方法的积极的意义,和对于 开发工具优点和不足。 2 第二章文献综述 第二章文献综述 2 1w 曲s e r v i c e 相关综述 w e b 服务是描述一些操作( 利用标准化的x m l 消息传递机制可以通过网 络访问这些操作) 的接口。w e b 服务是用标准的、规范的x m l 概念描述的, 称为w e b 服务的服务描述。这一描述囊括了与服务交互需要的全部细节,包 括消息格式( 详细描述操作) 、传输协议和位置。该接口隐藏了实现服务的细 节,允许独立于实现服务基于的硬件或软件平台和编写服务所用的编程语言使 用服务。 2 1 1w 曲s e r v i c e 相关协议 w e bs e r v i c e 是建立在现有的和新兴的标准之上的,包括:h t t p 、可扩展 标记语言( e x t e n s i b l em a r k u pl a n g u a g e ,x m l ) 1 1 0 简单对象访问协议( s i m p l e o b j e c ta c c e s sp r o t o c o l ,s o a p ) 【l l 】、w e b 服务描述语言( w e bs e r v i c ed e s c r i p t i o n l a n g u a g e ,w s d l ) 1 2 1 1 3 】以及通用描述、发现和集成( 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 ya n di n t e g r a t i o n 。u d d i ) 【。 这些基本的协议,构成了w e bs e r v i c e 的协议栈,协议栈简单分为三层: w s d l s o a p h t t p 图2 - 1w c bs e r v i c e 协议栈图 w e b 服务协议栈的基础是网络层。w e b 服务要被服务请求者调用,就必须 是可以通过网络访问的。因特网上可以公用的w e b 服务使用普遍部署的网络协 议。h t t p 凭借其普遍性,成为了因特网可用的w e b 服务真正的标准网络协 议。 第一章文献综述 上一层是基于x m l 的消息传递,它表示使用x m l 作为消息传递协议的基 础。在这层上普遍应用的协议是s o a p 协议,它应用更简单的方式更有效的负载 h t t pp o s t 。 最上层是服务描述层。w s d l 协议足完全基于x m l 的。它定义了服务交互 的接口和结构。在w s d l 标准中提供了可扩展的元素,通过这些元素,可以对 w s d l 进行扩展。这样就给了w e bs e r v i c e 的描述方面更多的研究空间。 2 1 2w e bs e r v i c e 的体系结构 w e b 服务体系结构【h 】基于三种角色( 服务提供者、服务注册中心和服务请 求者) 之间的交互。交瓦涉及发布、查找和绑定操作。在交互过程的同时产牛了 w e bs e r v i c e 的生命周期。服务提供者定义w e b 服务的服务描述并把它发布到服 务请求者或服务注册中心。服务请求者使用查找操作来从本地或服务注册中心检 索服务描述,然后使用服务描述与服务提供者进行绑定并调用w e b 服务实现或 同它交互。 w e bs e r v i c e 体系结构图如下: 图2 - 2w e bs e r v i c e 体系结构图 如图2 2 所示,w e bs e r v i c e 的服务注册中心与服务提供者之间的关系是本 文讨论的重点。在初始结构中服务注册中心提供给服务提供者w s d l 和 u d d i ,而服务提供者向注册中心发布( p u b l i s h ) 服务。而当服务网络作为服务 注册中心出现时,它可以为服务提供者更多的支持,同时服务提供者可以通过 4 第- 二章文献综述 一些方法来发布包括服务存内的更多有关服务的内容,来增加被发现和被使用 的可能性。 对于利用w e b 服务的应用程序。必须发生以下三个行为:发布服务描 述、查询或查找服务描述以及根据服务描述绑定或调用服务。 发布:为了使服务可访问,需要发布服务描述以使服务请求者可以查找 它。 查找:服务请求者直接检索服务描述或在服务注册中心中查询所要求的服 务类型。 绑定:服务请求者使用服务描述中的绑定细节来定位、联系和调用服务, 从而在运行时调用或肩动与服务的交互。 2 1 3w e bs e r v i c e 生命周期 w e bs e r v i c e 的生命周期16 】可以归结为:接口,逻辑,部署,应用,管 理,更新和维护,替换或消亡的几个过程。整个的生命周期义可以称之为w e b s e r v i c e 开发生命周期。 接口【1 8 】:开发服务功能的第一步骤,定义服务接口描述,操作和输入输出 样式,接收和返回s o a p 消息样式。 逻辑:定义服务实现,实现接口功能的逻辑,是由开发者编写的服务后台。 这个阶段服务开发者可以应用多种语言与多种方法来实现。服务功能在这一阶段 实现。 部署:部署阶段包括向服务请求者或服务注册中心发布服务接口和服务实 现的定义,以及把w e b 服务的可执行文件部署到执行环境中。 应用:是生命期中最长的阶段,在此过程中会伴随着更新和维护,不过最 终的目标是让用户更好更方使来使用服务,这样才会真正实现服务开发的价值 所在【1 9 1 。 管理:管理阶段包括持续的管理和经营w e b 服务应用程序。安全性【2 0 】、可 用性、性能、服务质量1 2 1 j 2 引。 替换或消亡:在服务不再适合或者很少被调用以致服务不再拥有它应有的 价值时,被其他的服务替换或者停止它的生存来结束服务的整个生命周期。 此过程始终围绕如何开发,如何应用两个部分来进行的。服务网络正是集成 了开发和应用的整个开发生命周期的环节。它对服务生命周期的各个部分进行 管理和支持,从而它不仅仅是传统意义的索引式的服务注册中心。 本文是在服务网络基础上对于w e bs e r v i c e 开发过程的研究。实现了基本的 对w e bs e r v i c e 开发工具,来支持以注册中心为基础的复用开发的思想。 第二章文献综述 2 2 服务开发方法介绍 当今几种流行的开发w e bs e r v i c e 方法【2 3 ,以及对于几种方法中的共性和不 l j 的讨论,是本文讨论w e bs e r v i c e 开发的基础。 2 2 1 应用a x i s 开发w 曲s e r v i c e a p a c h ea x i s 是较受欢迎的w e bs e r v i c e 开发平台之一它是a p a c h e w e b s e r v i c e 的子项目【2 4 1 ,其核心是一个s o a p 处理器,用于开发包括客户 端服务器端,s o a pg a t e w a y 等各种应用【2 5 1 。 在e c l i p s ew t p 2 6 】版本中几乎包括现在所有j a v a 相关的辅助w e bs e r v i c e 开 发插件工具【2 7 】。包括支持w e bs e r v i c e 部署发布和维护的a p a c h ea x i sv 1 4a n d a p a c h ea x i s 2 的相关插件,w s d l 文档编辑的w s d le d i t o r ,用于代码s t u b 生成 的w s d l 2 j a v a 的代码生成器等工具【2 引。 2 2 2 应用s o a pt o o l k i t 开发w e bs e r v i c e s o a pt o o l k i t 是微软推出的一套w e bs e r v i c e 方法包。它主要包括客户端组 件、服务器端组件、s o a p 相关组件、辅助工具几个部分。其中辅助工具部分包 括支持w s d l 和s o a p 相关的工具f 2 9 1 3 0 1 。 2 2 3c o d e 2 w s d l 和w s d l 2 c o d e 在开发w e bs e r v i c e 的各种方法中,可以总结出两种设计方法。第一种是先 设计接口类,然后通过接口发布来自动生成w s d l 文档。第二种是先编写w s d l 文档,通过w s d l 文档生成代码类的s t u b ,通过添加逻辑把w s d l 文档发布成 w e bs e r v i c e 。这两种方法被称之为c o d e 2 w s d l 和w s d l 2 c o d e 3 1 】。 由于w s d l 2 c o d e 方法对于接口的描述更具规范性,更符合大规模软件开发 的规范性要求,同时可以减少开发人员在开发服务器端和客户端代码的工作量, 得到人们的广泛应用。所以本文开发方法是基于w s d l 2 c o d e 方法的。 2 3 服务网络介绍 目前,w e b 服务注册中心往往是类u d d i 的,使用飙文档来描述企业及 其提供的w e b 服务,并维护w e b 服务的全球目录。这种基于u d d i 的w e b 服 务注册模型缺少对w e b 服务之间关系的进行语义描述,因而存在很多弊端。 6 第_ 幸文献综述 基于语义的w e b 服务关系网络( s e r v i c e sn e t w o r k ,s n ) 【3 2 】,主要从描述w e b 服务的语义和服务相互间的关系两个方面做出改进。它实现了一种网络状的w e b 服务信息组织方式,即个基于语义的w e b 服务关系网络,支持服务的发布、 发现以及服务自动组台和服务关系的自动推理。 本文基于上述的服务网络来完成w e bs 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 - 3服务网络服务层次图 由图2 3 可知服务网络中的服务以抽象服务作为服务网络结构的上一层次, 而在下以层次中的具体服务与具体服务之问是存在这子类的关系【3 3 】f 3 4 1 。这样使 得继承与复用开发对于服务网络而言更加有意义。这样开发出的服务可以使服务 网络中具体服务之间的关系更明确,而从抽象服务索引查找的发现算法也更容易 7 第章文献综述 设计【3 5 】。通过继承与复用开发方法得到的w e b 服务,在w s d l 文档中存在着服 务关系的先验信息和服务语义关键字的信息,这样不仅对于服务本身的添加,同 时也对今后开发者复用服务网络中服务提供更好的支持。 2 4 本章小结 本章通过对w e bs e r v i c e 相关的介绍、对当今存在的主流开发方法的介绍、 对服务网络的相关特点介绍,说明了基于服务注册中心复用开发的思想的可行 性。特别以服务网络这样一个注册中心为基础的复用开发的可实现性。 8 第三章基于服务网络的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 开发丁具的系统详细设计,是以此为指导来进 行开发工作的。开发方法各个部分的设计,以及这样设计的工作意义是本章重要 讨论的内容。 3 1w s d l 结构和应用分析 w s d l 网络服务描述语言( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ) ,它是一种使 用x m l 编写的文档。它可描述某个w e bs e r v i c e 。它可规定服务的位置,以及服 务提供的操作或方法。 在2 0 0 1 年3 月。w s d l1 1 被i b m 、微软作为一个w 3 c 纪录( w 3 cn o t e ) 提交到有关x m l 协议的w 3 cx m l 活动,用于描述网络服务。 在2 0 0 7 年6 月,w s d l 2 0 成为w 3 c 推荐标准。 3 1 1w s d l 文档的结构及各部分在本文中应用 在现阶段网络中存在的w e bs e r v i c e 基本都是应用w s d l l 。1 描述的。所以 本文的开发方法着重应用w s d l l 1 规范来进行开发。 w s d l 文档的根元素是 ,一个 就代表着一个w e b 服 务。在根元素下,w s d l 文档是利用这些主要元素来描述某个w e bs e r v c i e 的。 简单如下表介绍: 表3 1w s d 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 执行的操作 w e bs e r v i c e 使用的通讯协议 w e bs e r v i c e 基本调用信息, w s d l 文档除上述介绍的主要元素外,对于个w e bs e r v i c e 可以进行一个 详尽的描述。而作为w e bs e r v i c e 在网络中被调用的唯标示,下面介绍一个 w s d l 文档的x m l 结构,来说明它是如何来描述w e bs e r v i c e 各个部分信息的。 9 第三章基于服务网络的w e bs e r v i c e 开发下具系统设计 元素分为3 个部分,一部分是d o c u m e n t a t i o n ( 文档的说明) , 一部分足i n c l u d e & i m p o r t ( 本文称之为对外部的引用) ,一部分是文档主要的 描述部分。 文档说明部分足用自然语言以x m l 结构来描述一个w e bs e r v i c e 的功能和 调用方法的。这部分的介绍成为对于w e bs e r v i c e 的语义挖掘是重要的初始信息, 也是本文作为语义复用的重要操作单元。 对外部引用的部分是w s d l 为了描述方便,引用其他w s d l 文档中的定义。 其中i n c l u d e 是在同一命名空间下,而i m p o r t 是在不同的命名空间下。它是标准 的引用其他文档的定义,一般局限于数据类型的定义。而本文的复用思想是在此 基础上,继承现有的w s d l 文档开发自己的服务,在不同的命名空间下,开发 独立全新的服务。而此服务在服务网络中才会体现出与原服务之间的联系。 主要描述部分是描述一个w e bs e r v i c e 的具体接口、协议、调用等信息的。 本文主要关注i n t e r f a c e 、o p e r a t i o n 、m e s s a g e 三个级别。在此级别上进行复用和 继承。对于i n t e r f a c e 的复用是在接口级别上的复用,由于现在网络中正在应用的 服务基本只有一个i n t e r f a c e ,所以这个级别也相当于服务级别的复用。o p e r a t i o n 的复用是在接口下一层次,是最为常用的层次。不同的o p e r a t i o n 可以添加到不 同的接口中,并携带着自己原有的输入和输出参数定义( m e s s a g e 定义) 。 o p e r a t i o n 层次的复用是非常个性化的,所以成为开发工具实现的重点。 w s d l 结构如下图所示: 图3 - 1w s d l 结构图 代表着一个服务的i n t e r f a c e ,在每个i n t e r f a c e 中定义供用户调用 的很多方法( o p e r a t i o n ) 。这些方法会拥有自己的i n p u tm e s s a g e 和o u t p u t l o 第三章基于服务网络的w e bs e r v i c e 开发下具系统设计 m e s s a g e ,这些m e s s a g e 是在 标签中定义的,而在定义消息的同时,不 同消息的不同的数据类型是在 :元素中定义的。这样构成了由低向上的引 用关系,使w s d l 文档的元素联结起来构成整体的w e bs e r v i c e 的定义。 3 1 2w s d l 在服务发现中的作用 现在网络中的服务纷繁复杂,人们一般通过u d d i 注册中心来对服务进行查 找调用。而u d d i 作为服务发现的关键,在服务发现上存在着很多的不足。这些 问题在第一章中已经做了介绍,在此详细叙述作为服务描述的w s d l 文档在服 务发现中的作用。 w s d l 文档是发布服务与服务调用之间的桥梁。用户通过拿到服务的w s d l 来了解此服务的调用方法,根据w s d l 文档的描述来组织s o a p 消息,与服务 所在的服务器地址进行交互,来完成用户所要的功能需求。注册中心在收集网络 中的服务时,最初始的也是唯一的分析源正是描述w e bs e r v i c e 的w s d l 文档。 通过对w s d l 的分析提取出对于用户有价值的描述信息或功能信息,给用户提 供索引和查找。 3 1 3w s d l 在服务开发中的作用 w s d l 作为描述服务接口的标准,在服务开发中对于接口的描述是统一的, 而且它不基于任何开发语言和开发平台。现今开发者开发w e bs e r v i c e 的第一步 骤大多是设计服务接口,并开发w s d l 进行描述【3 引。接着再由w s d l 生成所要 实现语言的c o d es t u b ( 例如i a v a 语言的代码桩) 。这样对于w e bs e r v i c e 开发方 法的统一有着积极的意义。以前的不同语言不同平台的设计方法将会得到统一r 更利于w e bs e r v i c e 技术向前发展。 3 2 需求分析 已经存在于服务网络中服务节点,服务网络会对它们进行语义挖掘和关系 挖掘,来初始化服务的语义与关系信息。应用基于服务网络的w e bs e r v i c e 开 发,开发者可以自己通过提示来确定服务的语义信息,这样会比挖掘出的信息 更准确。这就需求开发方法可以提供给开发者相关领域的推荐命名空间,推荐 语义关键字,这样为挖掘算法减轻负担的同时又使服务网络中节点的信息更加 准确。它同时提供开发者一套复用服务嘲络w s d 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 一定程度上的复用开发。现在网络中存 在的服务数量非常巨大,而且增长的速度也非常快。服务开发本身需求一套复 用现存服务的方案。 开发者,需求在现有i d 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 s d l 和接口信息为基础,完成新服务的 快速开发。而服务网络作为基于本体,带有语义信息的服务注册中心,作为本 文的基础,更有一定的前瞻作用。 基于服务网络的开发方式较其他开发方法的优势在于:便捷开发接口过程、 逐步规范接口开发的多样性和领域接口通用性、复用思想在w e bs e r v i c e 开发得 到更好应用。 3 2 1 系统采用的实现方式 实现开发工具可以基于多种平台,多种方法来进行。本文选择应用e c l i p s e 插件的方法进行开发,由于此系统的目的是辅助开发者开发w e bs e r v i c e 。在 e c l i p s e 现有功能插件基础上进行应用,形成一个覆盖从设计、开发到部署、发 布整个过程开发流程的开发方法。 主要流程以扩展e c l i p s e 向导为主,加以辅助对话框和用户交互,来完成 w s d l 文件初始化,过程紧密联系服务网络。从w s d l 文件应用其他插件来完 成对于w e bs e r v i c e 逻辑编辑和部署方面的工作。 1 2 第三章摧于服务网络晌w e b s e r v i c e 开艇t 具系统设计 3 3 开发工具的体系结构 系统的体系结构分为模块结构和流程两个部分其中系统的整体模块结构主 要以m v c 模山基础以便于u l 与具体功能逻辑的相互独立系统的总体流 程以w e bs e r v i c e 流行开发方法流稃为基础,对于如何应用服务嘲络、如何继承 开发接口和如何重用语义关键字进行了增添 3 3 1 系统整体结构 系统主要分勾3 个层浪:u i ,逻辑层和w s d l 模型层:u i 层和逻辑层应用 人机交互来进行信息交,使开发者的意闫和刈服务网络的复制很友好地传达 给逻辑层部件。在逻辑层构建的过程中完成剥w s d l 模型的组织为摄终的 w s d l 立档的生成提供基础。 系统的结构层次借鉴m v c 分为_ 二层+ 结构如下圈所示: 【5 c ,【。r f _ _ w s d l 佟i 圈3 - 2系统结构图 系统以友好的人机变互策略完成逻辑部件和服务网络间的交互。在具体 的交互叶1 柬完成对于w s d l 模型的构建和组织。把整个的功能晟终提供给开发 者使得开发者在开发自己服务的过程中得到服务阀绍的支持和帮助 3 3 2 系统总体流程 在w e bs e 州c i e 生命周期中,本系统昕关注的是开发周期覆盖w e bs e r v i c e 开发的各个环节在具体的流程中包括服务嘲绢服务查找、基于复用方法的 第三章基于服务网络的w e bs e r v i c e 开发工具系统设计 开发过程、基于复用的语义标注和生成关键字、组织和生成w s d l 模型、由模 型来生成标准的w s d 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 的方法。具体过程是: l , 初始化服务部分,服务有很多基本元素,例如名字,服务器地址, 功能等,这部分通过i j i 和开发者交互来完成服务的初始化。 2 ,开发的第一部分是开发服务的接口,接口描述文件是开发者需要开 发的。这部分需要初始化文件信息,文件名,目录等,和初始化一 般文件大同小异。 3 服务网络( s n ) 与开发者通过u i 交互,完成s n 对于开发w s d l 文件的支持和帮助。这部分开发者可以和s n 交互,查找s n 中的服 务。开发者通过浏览所查找出服务的接口样式,选择某一个服务进 行接u 复用和语义复用。此过程给开发者提供接口复用支持、语义 复用和语义关键字命名提示功能。 4 ,编辑接口,来最终确定所要开发w s d l 文件模型,来完成w s d l 文 件的生成。 5 ,其他工具应用阶段,在完成上述步骤后,开发者可以应用w s d l e d i t o r 进行对文件的编辑,应用a x i sw s d l 2 j a v a 得到;a v a 代码框 架,应用服务网络注册机进行注册等步骤而最终完成开发。 系统开发w e bs e r v i c e 流程图如下: 1 4 第三章基于服务网络的w e bs e r v i e e 开发丁具系统设计 蚕望萤蛩 第三辛基于服务网络的w e b s e r v i c e 开发t 具系统殴计 在图3 - 3 系统流程图中展币的工具主饕的逻辑部分是在开发丁肄系统中所要 重点实现的 3 4w s d l 模型设计 模型在系统中的起着核心的作用,它足一对一对应于w s d l 文档,每个完 整的模型都会通过第四章介绍的算法生成w s d l 文档所以系统内鄱实际是在 模型上进行操作的,它是联结对w s d l 设训与最终实现生成的桥粱。 w s d l 模型设_ i ;卜成树的结构树有5 个层次对应可咀复用的层次有3 层= 具体的每层如下简中示意图所示: ,l 、。 ,4 、 罔3 4w s d 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 et i 分为接n 、操作、消息、参数类 型4 个层次。在系统中可以利用服务网络复用的层次包括接口、操作,消息3 个 层次。 树的根节点代表着所对应w s d l 文档中描述的w e bs e r v i c e 。 根节点下i n t e r f a c e 对应于w s d l 中的p o r t t y p e 元素,也就足服务的接【j - 虽然w s d l i1 规范允许个服务有多个接口,一般每个服务的接口只有一个。 而对于这个级别的复用,正是应用服务网络中w s d l 接口描述,以接口为单位 第三章基于服务网络的w e bs e r v i c e 开发t 具系统设计 的复用。此复用相当于创造出完全等价的接口,由此开发的w s d l 所描述的服 务与服务网络中所复用的服务是完全等价的关系。 在i n t e r f a c e 节点下对应o p e r a t i o n 节点,一个接口往往对应着多个操作,而 对于服务的调用也足在这个级别的调用,通常是用户调用服务实际上是应用服 务接口中对应功能的操作。这个级别的复用是效率最高的,开发一个具有多个 功能操作的接口是开发一个服务的核心部分。本系统对于o p e r a t i o n 级别的复用 做了具体细致的实现。 在o p e r a t i o n 节点下对应m e s s a g e 节点,每个o p e r a t i o n 一般包括3 种 m e s s a g e ,分别是i n p u t ,o u t p u t 和f a u l t 。i n p u t 是操作的输入消息,o u t p u t 是操作 的输出消息,f a u l t 是出错返回消息。对此级别的复用是对于每个操作巾的输入 输出消息进行复用,而在此基础上的服务组合正是对服务m e s s a g e 级别的组合。 通过此方法开发的服务更有利于组合算法斗1 的发现。 在m e s s a g e 节点下对应t y p e s 节点,它定义了对应m e s s a g e 的输入输出具体 数据类型。而在t y p e s 元素中定义的s c h e m a 止是用来描述具体数据类型的。 3 5 基于服务网络继承开发w s d l 的设计 基于上述的w s d l 模型,如何对于基于服务网络继承开发w s d l 的设计是 本小节要解决的问题。 3 5 1 基于服务网络继承的复用设计 本文工具系统的特点是应用复用的思想来完成对于w e bs e r v i c e 的开发工 作,而具体的复用过程的设计是如何应用服务网络提供的服务信息以及服务的 w s d l 来完成对开发工作的支持。以友好的交互u i 来更容易使开发者应用复用 的方法来完成相关的w e bs e r v i c e 的开发。 复用过程主要是复用服务网络中的相关w s d l 文件以及文件中的信息,包 括操作,信息,数据类型等接口信息。通过用户与服务网络的交互,用户了解 服务网络相关领域服务信息,然后浏览找到所需要复用的接口或者关键语义信 息,采

温馨提示

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

评论

0/150

提交评论