




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)基于web+service技术的移动计费办公自动化系统研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
p8 3 6 9 5 2 两安建筑科技人学坝l 。论文 论文题目:基于w e bs e r v i c e 技术的移动计费办公自动化系统研究 专业:计算机应用技术 硕士生:向炜 指导教师:赵文静教授 摘要 随着i n t e m e t 技术的迅猛发展和分布式应用系统在电子商务、电子政务应用中 的日渐普及,各种各样的新兴分布式对象技术不断涌现。其中发展比较完善的有 c o r b a ,d c o m 和j 2 e e 技术以及目前新兴的w e bs e r v i c e 技术。 本文对基于w e bs e r v i c e 技术的分布式应用系统做了较深入的研究。首先从分 布式应用系统的形成、发展谈起,简要介绍了三种当前主流的分布式技术:c o r b a 、 d c o m 和j 2 e 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 b s e r v i c e 应用系统框架。接着介绍了w e b s e r v i c e 技术中的三种关键技术( s o a p ,w s d l 和u d d i ,其中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 则负责注册 并管理已注跚的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 技术的发展方向。 关键词:w e bs e r v i c e ,x m l ,s o a p ,w s d l ,u d d i 西安锉筑科技人学坝卜论文 t i t l e :a n a l y s i so f m o b i l ef e eo a s y s t e m b a s e do nw e bs e r v i c e s p e c i a l i t y :c o m p u t e ra p p l i c a t i o nt e c h n o l o g y n a m e :x i a n g w e i i n s t r u c t o r :z h a ow e n j i n gp r o f a b s t r a c t w i t ht h e r a p i dd e v e l o p m e n t o f i n t e m e ta n dt h e p o p u l a r l a r i z a t i o no f a p p l i c a t i o n o f d i s t r i b u t e da p p l i c a t e ds y s t e mi ne - b u s i n e s sa n de - p o l i t i c s ,k i n d so f t e c h n o l o g yo f d i s t r i b u t e do b j e c tc o m eo u t c o n t i n u o u s l y ,w e l ld e v e l o p e d o n e so f t h e ma r ec o r b a , d c o m ,j 2 e e a n dt h en e w d e v e l o p i n gw e b s e r v i c e d e e pa n a l y s i so f d i s t r i b u t e da p p l i c a t e ds y s t e m b a s e do i lw e bs e r v i c eh a db e e nm a d e i nt h i sa r t i c l e f i r s t l y ,f r o mt h ef o r m a t i o na n dd e v e l o p m e n to f d i s t r i b u t e da p p l i c a t e d s y s t e m ,t h r e e k i n d so f c u r r e n tm a i nd i s t r i b u t e dt e c h n o l o g y :c o r b a ,d c o m ,j 2 e ew e r e s i m p l yi n t r o d u c e d ,a n d t h ec o m p a r a t i o no f t h e mw a s m a d e s e c o n d l y , c u r r e n td e v e l o p i n g d i r e c t i o no f e - b u s i n e s sw a si n t r o d u c e d ,t h es h o r t c o m i n go f o l dd i s t r i b u t e dt e c h n o l o g yi n t h i sd i r e c t i o na n dt h ef a v o ro f w e bs e r v i c ei nt h e s es h o r t c o m i n gw e r ed i s c u s s e d t h em a i ni n t r o d u c t i o no f f r a m eo f w e bs e r v i c ea p p l i e ds y s t e mw a sm a d ef r o mt h e s o u r c e ,d e v e l o p m e n t ,f i a m e e f s y s t e ma n dc o m p o s i t i o n o f i t a n dt h e nt h r e ek i n d s o f k e y t e c h n o l o g yo f w e bs e r v i c e :s o a p , w s d l ,u d d ia n dt h e i n t e r r a l a t i o no f t h e ma n dt h e r e s p e c t i v ee f f e c ti nw e b s e r v i c ew e r ed i s c u s s e d ( s o a pt a k ec h a r g eo f m e t h o d ,d a t a t r a n s m i t t i o n ;w s d ld i s c f i p t sc o m p e t e n c eo f w e bs e r v i c e ;u d d im a n a g e s r e g i s t r a t i o n a n d r e g i s t e dw e bs e r v i c e ) o nt h eb a s i so f m o b i l ef e e s y s t e m t h a ta u t h o rt o o k p a r ti n ,a f t e rt h ea n a l y s i so f c h a r a c t i c so f t h i ss y s t e mt h ec a u s e o f a p p l i c a t i o no f w e b s e r v i c ea n df a v o ro f a p p l i c a t i o n o f w e bs e r v i c ea l ed i s c u s s e d b a s e do nt h i sa h i g hp r o p e r t y , h i g h l ys t a b l ee r t e r p r i s e e b u s i n e s s ( p o l i t i c s ) p l a ts o l u t i o n a tt h ee n d o f t h i sa r t i c l es h o r t c o m i n ga n ds c o p ea n d t h e d e v e l o p i n g d i r e c t i o no f w e bs e r v i c ew e r ed i s c u s s e d k e y w o r d s :w e bs e r v i c e ,x m l ,s o a p ,w s d l ,u d d i 声鞠 本人郑重声明我所呈交的论文是我个人在导师指导下 进行的研究工作及取得的研究成果。尽我所知,除了文中特 别加以标注藕致谢韶地方外,论文中不包含箕毽人已经发表 或撰写过的铲究成果,也不包含本人或其他人在其它单位已 申请学位或为其它用途使用过的成果。与我同工作的同志 对本研究所檄静所有贡献均已在论文中作了明确麓说明荠 表示了致谢。 申请学位论文与资料若有不实之处,本人承担一切相关 责任。 论文作者签名:徇砖 酗期:铷。j j 一留 关于论文使用授权的说明 本人完全了解疆安建筑科技大学畜关保罄、饺溺学位论 文的规定,即:学校有权保留送交论文的复印件,允许论文 被套阅和借阅;学校可以公布论文的全部或郝分内容,可以 采攥影馨、缩印或者其它复谁l 手段保存论文。 ( 保密的论文在论文解密后应遵守此规定) 论文作者签名:自瑞 导师签名: 注:请将此页附在论文首页。 园期:伽0 3 ;。玎 彰 ,2 1 绪论 1 1分布式应用系统的现状 分布式应用系统是随着面向对象技术的发展和软件网络化而不断发展和完 善的。在以前的单机系统环境下,所开发的软件也大多是单机软件,即只能在一台 计算机上运行的软件。随着网络技术的发展,计算机与计算机之间的通信越来越重 要,于是出现了各种通信协议,用于多台计算机之间共享数据或合作计算。此时的 软件结构主要是采用c s ( 客户机服务器) 模式。c s 模式是属于多层体系结构的 一种,这种模式下软件分两层,一层是客户端,主要用来向服务器端请求数据或操 作;另一层是服务器端,用来提供数据或完成客户的各种请求。而随着网络技术的 不断发展,客户需要在各种不同的硬件设备、网络环境、操作系统以及通信协议下 来进行数据共享和分布式计算,此时单纯靠c s 模式已经远远满足不了客户的需要 了。 为了解决这种情况,多层体系结构有了进一步的发展,在原来的二层结构的基 础上开发了三层体系结构,即在原来的客户端和服务器端之间又添加了一层软件作 为中间层。中间层软件的主要作用是用来屏蔽不同的软硬件环境、平衡服务器端负 载等方面,使得大型软件负载均衡,且能用于异构环境中。中间层软件还可以继续 细分为不同层次以满足客户的更高需求,使得此时的体系结构进一步发展成为n ( n 3 ) 层体系结构。n 层体系结构在复杂性和成本方面都有所上升,但在可扩展 性( 即可方便地容纳更多的客户) 、可缩放性、安全性和稳定性方面提供了比三层 结构更大的灵活性。 随着面向对象技术的发展,9 0 年代初出现了组件软件技术。在这种技术中,组 件是一些具有特定功能的软件模块,它们可以独立完成各自的功能,也可以透明相 互发送信息来合作完成某项合作功能,整个软件系统是由不同的,各种各样的组件 所组装起来的。在以往的多层体系结构中,客户端负责请求服务,而服务器端则负 责处理请求和提供服务,二者之间的分工明确。而在组件软件技术的影响下,客户 端与服务器端的界限不再那么明显。客户端可以向服务器端提供某些功能;服务器 端也可以向客户端要求某种操作。此时的软件系统中,各种参与计算的计算体( 或 组件,即分布式对象) 之间是对称的,因此具有比以往的不对称结构更好的灵活性 和稳定性。 在分布式应用系统的发展过程中,出现了几种采用不同技术的分布式对象技 术。以下分别简单介绍一下: 第1 页 两互:建筑科技人学坝i 论义 c o r b a c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ( c o r b a ,公共对象请求代理体 系结构) 是o m g ( 对象管理组织) 于1 9 9 0 年提出的。它是一个针对客户机朋务 器体系结构的规范。客户机通过一个被称为o b j e c t r e q u e s t b r o k e r ( o r b ,对象请 求调度程序) 的运行时组件来调用位于服务器上的远程对象或本地对象。 在c o r b a 中,对象使用i n t e r f a c ed e s e r i p f i o nl a n g u a g e ( i d l ,接口描述语言) 来描述。i d l 是一种以c + + 为模型的语言,对象的i d l 经编译后产生代理设计模板 的一个实现,该实现称为客户机存根( s t u b ) 或对象骨架程序( s k e l e t o n ) ,它们由 客户机和c o r b a 服务的提供者使用。 c o r b a 的远程调用过程如图1 - 1 所示。 图l - 1c o r b a 的远程调用过程 图中,客户端将请求发送给s t u b 程序,由s t u b 程序通过o r b 调用提供该请求 服务的服务器端程序。如果该服务器端程序位于本地,则o r b 负责将请求转发给 服务器端程序的本地s k e l e t o n 程序,由它将请求传递到服务器端程序,并返回处理 结果。如果服务器端程序位于远程机器上,则o r b 经过i n t e m e ti n t e r - o r bp r o t o c o l ( i i o p ) 协议将请求发送给含有此服务器端程序的o r b ,由该o r b 处理请求并返 回结果。所有的请求与服务实现都是通过o r b 来进行的,请求调用对于客户端来 说是透明的,即客户端不知道调用的服务是位于什么位置,是本地调用还是远程调 用。 c o m ,d c o m c o m + c o m p o n e n t o b j e c t m o d e l ( c o m ,组件对象模型) 是由微软公司所开发的一种 分布式对象技术。c o m 技术在开发时从c o r b a 那里借鉴了一些关键性的概念, 第2 页 ”l ,包插个运行| 卜l 环境和i d l 语高。d c o m 魁c o m 的网络化版本t 即用于分 币j 式响j h 的c o m 。c o m + 是c o m d c o m 的自 化,它进步引入了简化c o m 丌 发人员工 乍时的运行蹿趿务。 在c o m 技术中,每一个对象都是一个软件组件,并且该组件都必须支持一个 称为i u k j l o w n 的接口。i u k n o w n 接口包含三个方法,其中a a d g e 坟) 和r e l e a s e ( ) 是用 采控毒4 对象的生存期的,q u e r y i n t e r f a c e ( ) 隽 法则用米查询浅对象所提供哪些方法可 供其他对象调用。 当c o m 鳃 孛被落耀露,麴莱客户掌趸与缀务器瓣象楚予潜一个进程中,c o m 不 需要任何运行时环境。当进程之间或进程与计算机之间需器通信时,c o m 的运行 情况如图l 一2 所示。 圈1 - 2c o m 组件被调用 在上图中,进程间的远程调用是通过c o m 运行时组件来进行的。此处的c o m 运行时缀件相当于c o r b a 中的o r b 。串彳亍化部分出l o c a ip r o e x x l u r e c a l l ( l p c , 本地过程调用) 协议来逃行处理。恧d i s u i b u t e dc o m p u t i n ge n v i r o n m e n t ( d c e ,分 布式计算环境) 则是用来提供分布式计算服务的。当c o m 发展到d c o m 时,d c o m 鄹络渗议擦取伐上图孛煞l p c 。安全提供者受责撬供系统安全经验证。 c o m 系统实际运行时,客户程序向c o m 运行时组件发送请求,c o m 运行时 组件通过l p c 来调用所需的请求。如果本地有该请求的服务,剐将请求发送给服 务端组牛,劳将处理缝聚返凰绘窖户端;如聚本逮没毒该黻务,鼹透过d c e 掇供 的功能通过网络协议查找所需的服务,将请求发送给找到的服务端组件,等待其处 瑾磊将结莱返霾绘客户辅。 j 2 e e 第3 负 哺安挫筑科技人学坝l 。论义 s u n 公司提出的j 2 e e 体系结构是建立在j a v a 语言基础上的,与平台无关 的一 申分布式对象技术。该系统中,宙r e m o t e m e t h o di n v o c a t i o n ( r m i ,远程方法 调用) 寒提供j a v a 对象的远程分布式调用。由于采用j a v a 谣言,因此对象的定义 与实现都是完全包含在j a v a 的范畴中。这种专一性掇供了一种能让j a v a 开发人员 绥速鳞决鞫越豹穰骜起方法,毽续点则是缺乏对其熬分毒式耱议懿开放蠖,镬褥 r m i 与其他系统的巨操作性受到了限制。 r m i 的体系结构图如下图所示。 圈1 - 3f t m l 的体系结构 上图中,客户机实现串行化方法调用,并把这些调用发送给服务器:服务器则 处理这些没辩酶调瓣,菇实褒蘑辩应的溅务。整个瑶类钕予蘸蘑奔绥浆c o r b a 和 d c o m 模式。图中的存根和骨架程序负责与远程引用层进行通信,并通过r m i 通 信链谈来转发对象调用。传输层负责j a v av i r t u a lm a c h i n e ( j v m ,j a v a 虚拟机) 之 阉鲍邋售,j v m 可以是本地熬,也可以位于不慰鲍计算规上。远程霉l 用屡使用传 输层来处理远程对浆的创建工作和远程方法的调用工作。 当客户端发出一个请求对,由j v m 调甭客户臻存缀程序邋过r m i 将该瓣蒙请 求转发出去。请求程传输胺传输,并被服务器端的j v m 通过远程引用层赝接收。 服务器端骨架程序接收请求,并搬处理缩果返回。假如此时服务器端传入了一个回 潺方法( 魏誊 譬逶懿) ,剐客户端与瑕务器磺载受色要炎一骚务嚣端产生该方法 的存根程序,客户机端产生该方法的骨架程序,即此时服务器端成为该回调方法的 客户灞,客户端成为该回调方法的服务器端。 j 2 e e 的这种分级体系终掏的主要优点是,菜一层可以在不影响其他层的情况下 被替换。例如,在t c p i p 上使用j a v a r e m o t e m e t h o d p r o t o c o l ( j r m p ,j a v a 远程 隽法渗议) 熬默认r m i 蕊竣可敬经援i t o p 采取代。警缓臻i t o p 来作为蓑传输屡 第4 页 两安池筑科技人学坝i 地文 协议时,r m i 可以远程调用c o r b a 服务。 x m l r p c s o a p x m lr e m o t ep r o c e d u r ec a l l ( x m l r p c ,x m l 远过程调用) 是s i m p l e o b j e c t a c c e s s p r o t o c o l ( s o a p ,楚肇对象访翘辏议) 熬 l 蓼赛。这攫麓要分绍一下x m l - r p c 和s o a p 的些基本情况,第二章中将详细讨论s o a p 。 x m l r p c 是由u s e r l a n df m f i e r 于1 9 9 8 年蓄先挺滋浆,部分原因就是为了解 决前面曾讨论过的传统分布式对象系统的复杂性和局限性。这里需要注意的一点 是,x m l r p c 是一个远程过程调用规范,即x m l r p c 不涉及关于调用对蒙的任 傍事蟪。 x m l - r p c 采用x m l 作为编码方式,使用h t r p 作为传输协议。x m l r p c 不 支持除 瓣( s ) 之外的冀他传输协议。下面戳一个简单的镯子来介绍一下 x m l - r p c 的调用过程。 以下是一个x m l - r p c 的请求。 p o s t 怒c 2 珏科1 0 u s e r - a g e n t :x m l r p cc l i e n t h o s t :1 2 7 0 0 1 c o n t e n t - t y p e :t e x f f x m l c o m e n t - l e n g t h :l7 3 ? x m lv e r s i o n = 1 o g e t c u s t o m e r n a m e p a r a m s q 4 0 1 2 3 4 5 6 佃蝴 x m l - r p c 豹囊畜请求郝是臻曙pp o s 羊请求。在x m l r p c 请求中,必须指 第5 页 两安建筑科救人学坝i 耽义 竺= = := :! = 燃:- :! ! 懋! = ! ! ! = ! 燃= = 烹= = = 燃兰= = 燃= = 竺= = = 然= = = 拦竺= 冀兰= ! 拳= 定u s e r - a g e n t 和h o s t ;h t t p 请求的内容必须是t e x t x r n l 类裂。在该调用中,顶级 元素怒。,m e 洳d c a l ,醴藏来指确诧x m 0 文档懿内容楚一个已宰行纯懿方法调臻。 元素中含有调用方法的名称。 元素是一个参数容器,用来 存放调用中的各个参数。其默认类型是s t r i n g ,但也可以指定如本例的其他类型。 本铡中数1 4 蹩提个4 字节整数。 当x m l r p c 服务器接收到请求时,它会对此x m l 文档进行语法分析,并针 对分析的结莱傲实际静谲溺。对该调嗣游应答就是该方法的返霞穰,包含在 标签中。如下所示: h t t p 1 12 0 0 2o k c o n n e c t i o n :c l o s e c o n t e n t - l e n g t h :1 3 6 c o n t e n t - t y p e :t e x t x m l d a t e :t h u , 1j a n2 0 0 30 1 :0 1 :0 1g m t s e r v e r :x m l 1 i p c ll i n u xr e dh a t 7 1 p a r a m s a b c d e 在联务器溃返翻懿嚣疆p 应签中,镪含存一令删l 文楼,方法调罚瓣运目馕 则存放在 标签中。邋固值和输入参数一样,也使用 苇l l ) i 絮来进行编码。 s o a p 岱照了x m l - r p c 中熬许多撅念。可以说,s o a p 就是x m l - r p c ,毽它 是在原有的x m l r p c 基础上的,具有比h t t p 更好的元数据交换、更好的包结构 定义以及一个曼开敬豹,霹供英德传输协议剩箱的钵系结搦。 s o a p 的主要特点来囱于该协议的本质:一组开放的标准和控制这些标准使用 的简荦规则。s o a p 从h t t p 和x m l 那里继承了开放性、稳定性、可缩放性和安 全款i n t e m e t 支持。x m l 黎x m l s c h e m a s 提燃了一令定义骥确款元数据交换基础 籀6 页 阳发建筑科技人掌填1 论义 - ! = :一:- = = - ! = :- :! ! ! = :! = :! = = :- ! ! = :=。= = :! ! 。= = = 然= = ! = 懋竺= = 烹= 竺= = = 竺= = 然竺= = ! = = = 构造。s o a p 的缺点也同样来自于h t t p 、x m l 、x m l s c h e m a s 和其本身的简单性。 与d c o m 和g i o p 相比,s o a p 矮有较长的等待时间,这源秘子h r r p 协议的无鼋爱 态性。 目前,i b m 和微软公司都在各自的开发工具中包含了s o a p 协议,s u n 公司 在最赣豹e j b 2 0 蔽范中妻开始支持s o a p 。s o a p 援蕊离w 3 c 熬鬟交成功帮w 3 c 愿意把s o a p 的下一个版本作为x m l p r o t o c o l 工作缎的一部分来对待已经表明, s o a p 的应用已经褥到大多数厂家的支持。 1 2课飚研究的背景与内容 本深遂怒疆陕蹒移囊办公蠡麓往帮移动盈务楚理矮鏊为蜚景来避毒亍繇究开 发的。在移动计费,报表、工单处理等业务中,数据量很大,并且数据分布在陕西 省各地,这魏数据粮据实际需要藏是汇总至日西最,或怒由西安下发刘各地市由各地 索进行进一步操份。在这榉的鸳爨下,蘩】毽l 传绫戆,j # 分毒式豹应髑系统鼹然不戆 完成这些需求。而采用哪种分布式应用系统则需要根据业务的内容做进一步的分 耩和考虑。 对于移动中心毅增加的业务采说,嘲为这一部分是颛增求,与以往的嚣求没有 或很少有共同点,因此需要开发一个全新的平台来处理这些新业务。这时一个比较 好豹瓣决办法裁是袋愿s u n 公司豹j 2 e e 体系缝稳。键对予移动中心已有黥,嚣傲 修改的部分业务,这些业务修改戏是需要增加新服务,或是改善已有服务,或整合 已有的菔务等等,逡一部分工作已有醵静设计辩静框架,并髓这些耩架静硬件设施 和软件平台、操作系统都不尽相瑚。如果采用j 2 e e 体系结孛句,由予移动业务中融 有部分的软件技术并不是仅限于j a v a 语言,所以会和j 2 e e 体系结构造成冲突,阁 为j 2 e e 嚣要一个绞豹j a v a 珏竣。嚣d c o m 豹应矮舞l 主要是在w m d o w s 操传系 统下,同样不适合于这种情况。采用c o r b a 腹然能够完成这种工作,但由于 c o r b a 体系结构的复杂稳,在这种情糯下也不是一个很好瓣选择。诧时w 以选孺 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 b s e r v i c e 授术的趱源,缀成部分,所采用的技术以及技术实现部分 的细节。 第7 页 两霞建筑科拙人学坝i 论文 = = = = = = = :- ! = 竺竺= :! = - ! = :盥! = := 竺= 。! ! = :燃= = = = 鬯= = 竺燃= ! ! = 紫= = = 燃= = = 黛= = 竺= = 苎 2 w e bs e r v i c e 技术 2 1w e bs e r v i c e 概述 2 1 。1w e bs e r v i c e 简介 在现在入们的生活中,已经可黻享璃i n t e m e t 提供的服务,琵翔羊l 雳互联网收 看新阉,发送和收取电子虫5 件,利用i n t e m e t 丰富的资源来焱找自己所需的资料等 等。而这些服务都是通过w e b 页面的形式来掇供它们的服务的。这些服务的种类 大壤霹班分为毅下足秘:掰需豹文档资源被终强w e b 茭嚣存款在互联鼹土供人们 测览;人们w 以下载自己所需的,已存放在服务器上的各种格式的文件;通过服务 供应商提供的表单页面填写并褥交自己所需要的数粥以迸一步与服务器交互来获 褥交互性的服务,翔电子购物。蕊所有这些w e b 页聪的提供者所使用的,用于发 布w e b 页面的软硬件平台可能是各种各样的;同样,w e b 页面的浏览糟也可能 选蠲备耱各棒靛搽俸系统警台窝溯菱器。髋b 舞覆掇供者与w e b 测整者之溺瓣 联系,主要体现在底层使用h t m l 、 r r r p 之类的标准协议进行通信,而与所使用 的系统平台箍没膏仟么关系。 h t m l h t t p 等协议怒为人类趣使用皴准冬豹:一个人发毒一个页葱,然后另 外一个人来浏览( 溅消费) 该页面:页面则由c g i 脚本程序,a s p ,j s p 戏其他类 钕接术来生成。这辩模式在当今静i n t e m e t 上获褥了巨大豹成功。 在当前互联网环境下,仍然是按照以往的h t m l a t t f p 模式来艇成各种页面, 并使厢这些瞬面来提供的服务。e 担于这照页面怒按照入类自身的习惯所生成的,不 弱的开发a 焚爨开发出来爨页嚣媳各不樱同,因此带塞了一系捌戆瓣题,比如:套 种网络服务自成体系,分散并且觅序:没有统一交换信息的标准;没有准确有效的 查诲方式,侵得不潮豹网络藤务之阖缀难相互遴信。 w e bs e r v i c e 技术就是为了解决这些闯题应运而生的。与基于h t m l h t t p 模 式的,为人裳准备的页面不同,w e bs e r v i c e 是为w e b 应用软件做准备的。即可以 捷援w e bs e r v i c e 及其捃关技本传为赢鼷遽售豹标准寒与各秘各嚣豹分毒式软件避 行通信,使得各种不同软件之间可以相互理解和通信,以此泉做到软件之间的平台 无关槛e 困惑,虿戳这祥说:一个w e bs e r v i c e 就是一个髓鼠运彳亍在任何平台上瓣 任何语言中被调用的软件组件。 从w e bs e r v i c e 的使用角度来看,w 曲s e r v i c e 就是种能够向外界提供可以通 过w e b 方式送行 鬻瘸兹a p i 豹应溺程序。举铡来说,舞暴我嚣j 要翻建一令毙返瑟 蒙8 页 一 两宜建筑科技人学坝f 论文 = = = = = ! = = ! = = = = ! 1 2 = = = = = = = - - ! ! = := 一= = := = 查询豳家的首都的w e bs e r v i c e 。于是我们的工作就是建立一个w e b 页面( 这里以 s p 为饿) ,浚页耐接受霞家名作为参数,著将该国家翡蓄帮作为一个结果字符窜 返四。实际调用的情况藏象下面这样对该页面发送h t t p 的g e t 请求: h 鲤:地q 查鳋监鲤鲢迅迤世2 q 塑! ! n 鸯2 q 也舢假定此页面可以处理中文,则该调用的返 鏊鏊魏是字籀串“j 京”。这就是最楚擎情况下熬w e bs e r v i c e 应鼷。 2 1 2w 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 s 是令全魏戆技术 架构。在这个技术架构中,为了支持技术架构的各种特性,备种各样的技术规范被 不断绝开发融来。如下图所示,整个w e bs e r v i c e s 的技术系列被称为怒 w e bs e r v i c e s s t a c k ”,他们就像一个堆栈那样,按照这样的方式共存协作麓。 麴2 - iw e b s 目喇s t a c k 在上图中,蓑扁层是融经在i n t a n e t 上广泛往雳静传输藤帮隧络瑟静标准:i p 、 h t 时、s m t p 等。中间部分是目前开发的w e b 服务的相关标准协议,包括服务调 用协议s o a p 、服务插述协议w s d l 和服务发现协议u d d i 、w s - i n s p e c t i o n ,以及 鼹务工作漉撼述语蠢w s f l 、w e b 鬏务豹安全秘议以及路垂捺议等。右边郝分是蒜 第9 页 阿霞建筑科技人学f i l i i 卜论文 个协议层的公用机制,这些机制一般由外部的正交机制来完成。这是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 采厢x m l 语言来描述和表示数据。这是由于x m l 良好的结构 性,强大的撼述性,优良的可扩充性采决定的。 第二w e bs e r v i c e 数据如何传输? w e b s e r v i c e 中使霞s o a p ( s i m p l e o b j e c t a c c e s s p r o t o c o l ,篱攀对象游闷癸 议) 来解决这个问题。由于s o a p 具有的开放性,稳定性、可扩展性和安全的i n t e m e t 支持,使得s o a p 在发放的很斑时间内已经褥至大多数厂商的支持,并酷递交猁 w 3 c 组织,裁为数赛公认媳括飧。 第三如何描述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 d i s c r i p t i o nl a n g u a g e ,w e b 藏务箍 述语言) 来描述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 可戳在哪一处u r l 找到。 篱四。鲤舞获取爨嚣熬w e bs e r v i c e w e bs e r v i c e 技术中采用u d d i 来对w e bs e r v i c e 进行统一注册与管理。u d d i 主要解决鞭务豹发蠛、撵述、集成这三今闯越。 图2 - 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 来定义数据, 茵燕x m l 楚w e b s e r v i c e 鹣语言鏊础;幂雳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 则是对w e b s e r v i c e 进雩了注飓、查找与管理利用的工 具。以下几个小节将分别简要介绍这些技术。 2 2s o a p 2 2 1s o a p 简介 s o a p 协议是在x m l 基础上定义的,因此它完全继承了x m l 的开放性和可扩 鹱性。s o a p 镬瑗瑷窍豹蘩予t c p i p 兹应瘸游议层 鞘强、s m t p 、p o p 3 等来获 第1 0 页 西安建筑科技人学f 哦i 论文 得与现有的网络通信协议最大程度的兼容。s o a p 本身不定义任何应用语义,它只 定义了通过使用一个模块化的包装模型和对模块中特定格式编码的数据的重编码 机制来表示应用语义。这使得s o a p 可以被很多类型的系统用于从消息系统到r p c 的延伸。 s o a p 的主要设计目标是简明性和可扩展性。其中简明性主要表现在整个s o a p 规范定义的消息结构非常简单,而除了这个基本消息结构外,s o a p 没有定义任何 额外的表述结构标准和编码格式,也没有定义自己的传输协议;可扩展性主要表现 在s o a p 可以使用任意的模式定义方式来定义内部传输内容的结构,可以与任意的 网络传输协议联合使用来完成传输过程。 s o a p 由四个部分组成: s o a pe n v e l o p e s o a p 包封构造并定义了一个整体的表示框架,用来表示在消息中含有什么内 容,消息由谁来处理,该消息是否必须进行处理等。 s o a pe n c o d i n gr u l e s s o a p 编码规则定义了一个数据的编码机制。s o a p 使用定义的编码机制来定 义在实际应用中所需要使用的数据类型,由此可在应用程序中使用由这些数据类型 所衍生的实例。 。s o a pr p cr e p r e s e n t a t i o n s o a pr p c 表示定义了一个用于表示远程过程调用和响应的约定。 。s o a pb i n d i n g s o a p 绑定定义了一个使用底层传输协议来完成在结点间传输s o a p 包封的约 定。有两种s o a p 绑定,分别用于描述s o a p 消息如何通过和不通过带h t t p 扩展 框架的h t t p 消息进行传输。 2 2 2s o a p 的消息模型 当s o a p 消息进行传输时,首先需要将s o a p 消息绑定在某个底层网络传输协 议之上,通过该协议来进行传输。如将s o a p 绑定在h r r p 上,或将s o a p 绑定在 t c p 上来传输s o a p 消息。消息在s o a p 结点间进行传输。所谓s o a p 结点就是 指那些按照s o a p 协议所定义的规范来处理s o a p 消息的网络传输结点。当传输过 程中发生不符合s o a p 约定的情况时,将会导致s o a p 结点产生一个s o a pf a u l t ( s o a p 错误) 。下图所示为s o a p 结点问通信的基本单位,即s o a p m e s s a g e 。 第1 l 页 两致建筑科挫人学碳i 论文 辫2 - 2s o a p 游息结撼 s o a p 游惠是蠢个必须窭鬻粒s o a pe n v e l o p e 、个霹选豹s o a ph e a d e r 一个必须出现的s o a pb o d y 组成的x m l 文档。其中s o a pe n v e l o p e 是该x m l 文 档的校元素,s o a ph e a d e r 和s o a pb o d y 是根元素的两个子结点。s o a p 消息的 语法嫂则如下: s o a p e n v e l o p e s o a p 包封是s o a p 溉息x m l 文档的顶级元素,它是必不可少的,并且名称 必须怒e n v e l o p e 。该元素可以包含命名空间声明和额外的属性,如: 上铡中彀含3 个会名窆阙声萌及一令e n c o d i n g s t y l e 编码方式属淫。其中 第1 2 受 两m 锉筑科技人学f ! ! i ! l 。论义 x m l n s :s o a p 。e n v 用于s o a p 本身,s o a p 规范中所定义的全部元素与属性( 如 e n v e l o p e 、b o d y 、m u s t u n d e r s t a n d ) 都怒这个命名空间的一部分。x m l n s :x s d 用来觚 w 3 嬲站上的模式中弓i 用元素与璃性。x m l n s :x s i 用于从x s d :模式的个实例中引羽 元素与属性。e n c o d i n g s t y l e 属性指明s o a p 消息中所使用的编码规则。它的作用范 醒是熬个s o a p 氢瓣,惫耩s o a p 包封豹掰有子元素。僵s o a p 镪封豹子元素哥 以明确地覆盏这个设置,从而定义自己的编码规则。如果没有定义这个属性,则装 明s o a p 消怠中所使用的默认编码方式没有任何限制,此时在s o a p 包封的子元素 中嗣榉可以设置叁也的缠妈方式来覆盏这个设定。 s o a ph e a d e r 该元素名为h e a d e r ,怒为了支持在松散环境下当通信双方之间程尚未达成一致 的情况下,为s o a p 消息增加特性的通用机制,如可以使用h e a d e r 来给s o a p 消 息添煽拔态管理或攀务支持。该元素不怒必须蹬现熬,堡如栗该元繁出现,翼8 必须 是s o a pe n v e l o p e 元素的第一个虞接予元素。如下所示为一个s o a ph e a d e r 的例 子: d 1 2 3 4 5 6 7 8 9 s o a p h e a d e r 元素的所有直接子元素被称为h e a d e r 条目。可以使用s o a pa e t o r 属经稻s o a pm u s t u n d e r s t a n d ) 霭像来指嘲由哪个s o a p 结点来处理条目以及如何处 理巯目。这聪个属性只能如现在s o a ph e a d e r 条目中。 s o a pa c t o r 属性用来指明h e a d e r 元索的接收者角色,它的值怒个u r i 。当 s o a pa c t o r 为下瑟这个特定瓣u r i 辩: 蚴w w , w 3 o r g 2 0 0 i 0 6 s o a p - e n v e l o p e d a c t o r n e x t 剐猎躜该h e a d e r 元素需要由s o a p 应甭稷序中所规定的下一个直接处理者来 进 j :处理。如果省赂s o a pa c t o rf 媾,是表鳃接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学四年级英语上册Unit5单元语音速记与巧练(含答案)
- 宿舍楼基础设施检查与维护方案
- 道路交通事故应急处理方案
- 水稻品种课件
- 水痘说明文课件
- 医用化学分散系66课件
- 知识点3.4从文化层面感知色彩设计构成设计色彩76课件
- 水电工作安全知识培训课件
- 二零二五年度高科技企业员工股票期权激励计划协议书
- 二零二五年楼顶彩钢板防水设计与施工承揽协议
- 二氧化碳静态爆破施工方案样本
- 八年级年级主任工作计划
- 英汉互译单词练习打印纸
- 四川JS-004竣工验收报告
- 花卉栽植施工方案
- 水工闸门课件
- 水泥生产企业生产安全事故综合应急预案
- 全自动血液细胞分析仪产品技术要求深圳迈瑞
- 找对英语学习方法的第一本书
- 《诺丁山》经典台词
- 对铁路机车乘务员规章培训的探讨与实践
评论
0/150
提交评论