`
xuyuanshuaaa
  • 浏览: 387759 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

webservice 关键技术

 
阅读更多
     Web Service 三个基本技术之 SOAP
SOAP:Web Service通过标准通信协议,在互联网上发布有用的程序模块(以服务的方式),目前大部分是用SOAP来作通信协议。因为SOAP与 DCOM和CORBA在概念上有相同之处,所以很多人在问:“SOAP是怎样激活对象的?”或“SOAP在使用什么命名服务(Naming Service)?”。或许在执行SOAP的过程当中会用到这些,但这些并不在SOAP规范要考虑的范畴之内。SOAP只是定义SOAP消息的XML格式(XML Format),如果你用一对SOAP标记(SOAP Elements)把XML文档括起来,那么这个就是一个SOAP消息,这不是很简单吗?

SOAP规范还定义了怎样用XML来描述程序数据(Program Data),怎样执行RPC(Remote Procedure Call)。这些可选的规范是为了构建RPC-style的应用程序(客户端SOAP消息包含函数名和在函数中用到的参数,而服务器端SOAP消息包含执行函数之后的结果)。大多数SOAP解决方案都支持RPC-style应用程序,因为很多程序员已对DCOM或CORBA熟悉。SOAP还支持 Document-style应用程序(SOAP消息只包含XML文本信息)。Document-style应用程序有很好的灵活性,所以很多用RPC很难构建的Web Service用这种方式构建。

最后SOAP规范还定义了HTTP消息是怎样传输SOAP消息的。这并不代表SOAP只能用HTTP来作为传输协议,MSMQ、SMTP、TCP/IP都可以做SOAP的传输协议。

很多大公司根据SOAP规范,都开发出了自己的SOAP解决方案。这些解决方案都是相对于某种语言。比如说Microsoft SOAP toolkit2.0把COM函数转换成SOAP消息,而Apache toolkit把JAVA函数转换成SOAP消息。这样难免带来一些兼容性问题。

现在SOAP的很多另人瞩目的特性已成为现实(SOAP已经运行于不同的硬件和软件平台),而且有70多个解决方案。之所以SOAP被人们所爱戴,是因为 SOAP比其他同类技术(CORBA、DCE)简单易用。

     Web Service 三个基本技术之 WSDL
Web Service提供一份详细的接口说明书,来帮助用户构建应用程序,这个接口说明书叫作WSDL(Web Service Description Language)。

WSDL是一种XML文档,它定义SOAP消息和这些消息是怎样交换的。IDL(Interface Description Language)是用于COM和CORBA的,WSDL是用于SOAP的。WSDL是一种XML文档,所以我们可以阅读和编辑,但很多时候是用工具来创建、由程序来阅读。
举个例子,你要使用供应商的Web Service构建应用程序。你可以向供应商索取使用Web Service的范例,然后按照范例来构建应用程序。这样可能出现意料不到的错误,比如说,你在程序中使用的客户代码的数据类型是integer,而供应商使用的数据类型是string.。WSDL详细定义客户端消息的格式,需要什么样的参数,这样可以避免不必要的错误
     Web Service 三个基本技术之 UDDI
通常已发布的Web Service要注册到管理服务器,这样便于使用者查询和使用。这个是通过UDDI(Universal Discovery Description and Integration)来完成的

UDDI可以比喻成电话本,电话本里记录的是电话信息,而UDDI记录的是Web Service信息。你可以不把Web Service注册到UDDI。但如果要让全球的人知道你的Web Service,最好还是注册到UDDI。

UDDI目录说明文件也是一个XML文档,它包括三个部分。“白页(White Paper)”说明提供Web Service的公司(人)信息,比如说名称、地址和联系方式等等。“黄页(Yellow Paper)”说明UDDI目录的分类,比如说金融、服务和印刷等等。“绿页(green Paper)”说明接口(Web Service 提供的)的详细信息。
UDDI提供多种查询方式,来帮助你找到需要的Web Service。如果你查询与财务有关的Web Service,那么UDDI会提供详细的信息。

webservice的使用:
两个系统需要进行数据交换,讨论用文本方式还是其他方式?我一直推荐使用web service方式,Web   Service就是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。
Web   Service所使用的是Internet上统一、开放的标准,如HTTP、XML、SOAP(简单对象访问协议)、WSDL等,所以Web   Service可以在任何支持这些标准的环境(Windows,Linux)中使用。 
  注:SOAP协议(Simple   Object   Access   Protocal,简单对象访问协议),它是一个用于分散和分布式环境下网络信息交换的基于XML的通讯协议。在此协议下,软件组件或应用程序能够通过标准的HTTP协议进行通讯。它的设计目标就是简单性和扩展性,这有助于大量异构程序和平台之间的互操作性,从而使存在的应用程序能够被广泛的用户访问。  
  
  优势: 
  I. 它的跨平台; 
  II. 并且SOAP协议是基于XML和HTTP这些业界的标准的,得到了所有的重要公司的支持。 
  III. 由于使用了SOAP,数据是以ASCII文本的方式而非二进制传输,调试很方便;并且由于这样,它的数据容易通过防火墙,不需要防火墙为了程序而单独开一个“漏洞”。 
  IV. 此外,WebService实现的技术难度要比CORBA和DCOM小得多。 
  V. 要实现B2B集成,EDI比较完善与比较复杂;而用WebService则可以低成本的实现,小公司也可以用上。 
  VI. 在C/S的程序中,WebService可以实现网页无整体刷新的与服务器打交道并取数。 
  
  缺点: 
  I. WebService使用了XML对数据封装,会造成大量的数据要在网络中传输。 
  II. WebService规范没有规定任何与实现相关的细节,包括对象模型、编程语言,这一点,它不如CORBA

    使用xfire开发webservice
xfire,axis,webservice,soap,stax,POJOs,WSDL等,搞清楚他们之间的关系,了解其机制原
XFire是与Axis 2并列的新一代WebService框架。具有如下:
1支持一系列Web Service的新标准--JSR181、WSDL2.0 、JAXB2、WS-Security等 ;
2使用Stax解释XML,性能有了质的提高。XFire采用Woodstox 作Stax实现;
3Easily Create Services from POJOs;
4易于与Spring框架结合;
5灵活的Binding机制,包括默认的Aegis,xmlbeans,jaxb2,castor
StAX:Streaming API for XML 。与 Simple API for XML (SAX) 不同,StAX 提供了编写 XML 文档的 API。更具体地说,它提供了两种 API:底层的、基于指针的 API( XMLStreamWriter )和高级的、基于事件的 API( XMLEventWriter )。基于指针的 API 最适合用于数据绑定的情况(比如从应用程序数据创建文档),而基于事件的 API 则通常用于管道式的情况,从输入文档中的数据构造新的文档。
POJOs:简单的JAVA对象(Plain Old Java Objects)
分享到:
评论

相关推荐

    WebService技术及其应用实例论文

    其次介绍了WebService技术中的关键技术,其中包括可扩展性标记语言(XML)、简单对象访问协议(SOAP)、Web服务描述语言(WSDL)和统一描述、发现与集成(UDDI)注册中心。最后本文依据WebServices的技术原理、体系...

    webservice报表制作系统关键技术研究

    本文以水利信息化为契机,结合webservice技术和ireport报表制作技术,对水利信息化系统中的报表制作部分做出关键技术研究,分析了报表制作的具体过程和所需技术,提出了使用Jasperreport作为报表控件开发Web报表的...

    webservice实验报告和源代码

    webservice实验报告和源代码,包括soap和rest风格的

    android调用webservice实例

    通过一个登录的案例,...服务端接口的返回数据使用了压缩加密的技术,10K的数据在压缩加密之后变成1K,这是手机省流量的关键技术所在,android如何解压解密,资源中都有演示。 这个资源包含了说明文档,jar和api齐全!

    SOA系统中手机信息与Web服务的数据同步 (2011年)

    通过对WebService关键技术与SOA的研究,探讨了利用蓝牙串行通信实现手机信息与Web服务应用系统数据同步的方案,给出了手机管理的Web服务同步时序设计。通过手机Web同步服务实例,详细阐述了基于蓝牙技术的手机串行端口...

    论文研究-基于WebService野外试验站信息发布平台研究.pdf

    阐述了Web Service技术,提出了基于XML和Web Service实现野外试验站信息发布平台以及实现平台关键技术的研究。

    等值线在线自动绘制关键技术应用研究

    文中对基于移动互联网的自动绘图关键技术进行了深入的研究,其中包括Web开发框架、Web Service功能介绍与特点分析及Gmt绘图技术,在关键技术研究的基础上开发了基于Web的等值线绘制系统,验证方法的正确性和有效性。...

    论文研究-WebService技术在开发多层分布式数据库系统中的应用研究.pdf

    分析了利用Web Service技术构建多层分布式数据库应用系统的体系结构以及应解决的关键问题,提出这种体系结构真正实现了应用系统逻辑上的多层和物理上的分布,实现了跨语言、跨平台、跨硬件的代码重用,在应用系统...

    区分WCF与WebService的异同、优势

    1.WebService:严格来说是行业标准,不是技术,使用XML扩展标记语言来表示数据(这个是夸语言和平台的关键)。微软的Web服务实现称为ASP.NET Web Service.它使用Soap简单对象访问协议来实现分布式环境里应用程序之间...

    基于web service 的工作流引擎

    摘要:工作流是企业经营过程的计算机实现,是支持经营过程重组和自动化的一项关键技术,而分布式工作流已经成为当前工作流技术发展的主流方向之一.Web Service技术的出现使异构环境下分布式工作流系统实现成为可能,并...

    论文研究-基于WebService的CFD仿真及其在建筑设计中的应用.pdf

    提出基于Web Service的CFD仿真平台,围绕远程计算的特性,阐述了仿真平台的系统架构,具体讨论了计算服务统一接口及其描述、计算伺服Agent的结构和工作原理以及基于Java3D的交互式后处理等关键技术,最后开发了简单...

    C#面试要点

    C#面试要点 1..net现在发展到什么版本了?(4.0) 平常开发是用什么版本?...6.WebService有哪些关键技术和规则? 7.ASP.NET的缓冲机制是什么? 8.应用程序缓存是怎样实现的? 9..net 三层架构是哪三层,代表什么意思?

    论文研究- Web services application development based on ISG simulator.pdf

    利用智能服务网关仿真器开发Web服务应用,许丹,,本文简单介绍了Web服务的关键技术,如SOAP,WSDL,XML等,主要研究了基于智能服务网关仿真器开发Web服务应用的过程和方法。智能服务网关��

    C#、java 字符流跨平台数据解压缩

    关键技术点和体会: 压缩的结果采用Base64编码,方便在Java端或者C#端打印出来调试,也方便在不同的应用间传输(如webservice),缺点是比转码前体积变大了约35% 字符串采用UTF-8编码获得byte数组,保证两端通用,...

    Web Services技术、架构和应用

    本书的内容涵盖了Web Services的各种关键技术、Web Services的整体体系架构和应用体系架构,以及Web Services应用的设计和开发。本书以Web Services技术系列为主线,逐一详细分析解释包括Web Services的各种核心技术...

    基于WebServices多技术单点登录的研究与实现 (2012年)

    通过分析现有的单点登录模型的优缺点,结合Webservice、Cookie及HTTP重定向等关键技术,提出了代理和经纪人模型,解决了统一身份认证和异步验证两大比较核心的问题。同时,由于HTTP重定向技术以及RSA加密技术的采用,使本...

    Silverlight技术

    了解Silverlight技术的优势及开发环境 使用XAML开发用户控件 绘制简单的矢量图和几何图形 Silverlight通过WCF、WebService进行通信 Silverlight使用Socket通信 编写Form/To/By动画 编写制作关键帧动画 Silverlight中...

    浅析私有云存储技术在数据中心中的应用

    随着社会的日益发展,云存储技术在数据中心中的应用越来越广泛,...具体介绍了数据中心中私有云存储技术的实际使用方法及关键性技术,并结合私有云存储在数据中心中的使用,通过数据迁移技术进行了详细的分析与说明。

    基于中间件技术在动态船期表中的应用与实现

    论文首先确定实现船期表数据处理需要使用的关键技术,并对其进行详细阐述。通过对业务的需求分析,进行功能设计,建立数据库,并对其功能最终加以实现。具体的说,此程序实现了查询船期表的服务,以及一些简单的信息...

    基于Web Service的个性化网络新闻订阅 (2006年)

    设计了一个基于Web Service架构的个性化网络新闻订阅服务系统,作为基于Web Service架构...详细讨论了读者个性化新闻定制、读者阅读模式的建模、个性化新闻服务调用、个性化新闻阅读以及读者阅读模式修改的关键技术。

Global site tag (gtag.js) - Google Analytics