XML是web serivces的核心基础技术,是SOAP实现的关键所在;而XMLHTTP就是根据XML来设计的。从实现的方式上讲:XMLHTTP是基于浏览器的,只要有IE,就能实现向服务器传递XML字符串,具有很高的通用性。
<script language="Javascript">
</script>
XMLHTTP与SOAP:
XML是web serivces的核心基础技术,是SOAP实现的关键所在;而XMLHTTP就是根据XML来设计的。从实现的方式上讲:XMLHTTP是基于浏览器的,只要有IE,就能实现向服务器传递XML字符串,具有很高的通用性。但是浏览器不是用来做XMLHTTP,它是面向大众用户浏览的,如果能用XML完成各种操作,必然会影响到用户。比如以前版本的msxml的对应浏览器,是可以访问客户端XML文档(初始时为XMLHTTP设计的),也就意味着可以通过XMLHTTP技术访问本地文件系统。后来microsoft把它定义为漏洞,现在就不行了。当然也可以编写客户端程序,只不过限于Visual 系列的程序,他们可以调用msxml中的API。但是服务端可以是asp,jsp/servlet都可以,都是把xml串变成xml文档对象。
SOAP是XML格式的通信协议,包含:SOAP封套定义了描述消息内容的约定,暗示了消息的处理方式;协议绑定提供了通过更底层协议传输SOAP封套的一套通用机制;编码规则是把各种应用程序数据类型映射为基于标签的XML表示方法的约定;RPC机制提供了一个表示远程过程调用及其返回值的方法。它与其他的协议之间没有明确的关系,他本省就是一种协议。它可以与http.stmp,tcp等协议绑定。SOAP消息是XML文档,还可以带附件,它可以根据W3C定义的API,生成SOAP消息,当然microsoft的.net平台也支持SOAP。SOAP+HTTP和XMLHTTP相似,当它提供更好和更强大的实现功能,可拓展性和分布协作通信中的通用性,更重要的是它已成为Web Services和线路通信的关键技术。
SOAP和RMI,CORBA,COM
RMI和COM都是分布式应用的实现方式,它们定义组件之间的通信。由于它们只是一个体系(例如用java写的一系列程序)下程序之间的通信约定,而且通信需要特定的平台支持,除了本体系之内的通信是高效之外,不能与别的体系下的程序。
CORBA就是为了解决这种通信问题,设计了代理请求模型(利用IDL语言),这样能够彼此之间的通信,但这样好像是修补,不能解决根本问题,是系统变得越来越复杂,而且用CORBA仅仅在挽回旧系统的使用价值有效果。他们都不能透过防火墙的。SOAP+HTTP是防火墙的友好协议,能够透过防火墙的。
SOAP是一种与具体实现无关的协议,基于XML格式,传输XML格式的数据,使得系统变得松散。这样在应用中利用XML的可读性,解析XML文档,来实现应用,大大的提高了系统的互操作性(与不同的系统之间的通信)。而且系统中各个单元业务逻辑清楚,这样就具有很高的可移植性和可重用。
UDDI与JNDI
UDDI是服务的注册管理协议,UDDI注册中心是用来注册服务的,用户可以通过WSDL来进行服务注册,客户通过在UDDI注册中心上查找服务,获得WSDL文档,根据WSDL文档,获取访问服务的方法,从而用SOAP与服务进行通信。它可以通过数据库来实现,也可以用开源或公司(IBM等)的,使用XML来表现。当用户查询,其细节可以由XML格式的信息返回。其访问程序不过是一个层次向下的查找的过程。它注册的服务是通用的,与平台无关,而且注册的方式是通用的XML的格式。它可以面向Internet,或Interanet为各种用户,提供各种各样的服务。
JNDI是Java服务命名目录,它以树的形式记录了EJB,DataSource的访问目录,程序可以通过JDNI和RMI来定位服务。具体的通过它们的部署文件,当服务器启动后,它根据部署文件自动建立JNDI,支持RMI和命名服务的查询(由服务器自己实现)。然后RNI就可以访问这些组件。它的思想和UDDI基本差不多,但它与具体的体系平台绑定,而且是由服务(与程序相关,严格不应该叫服务,应该说是组件)完全绑定,实现方式简单。因此UDDI相对于JNDI,更动态,更易操作.
WSDD与EJB的配置文件
对于CMP型的实体bean,WSDD与其配置文件有相似之处,但是它描述数据与数据库形成映射,不涉及方法,有服务器系统底层实现访问方法。而WSDD定义服务的访问接口,有支持web services的系统底层进行识别接口,传送数据等。
分享到:
相关推荐
本书以Web Services技术系列为主线,逐一详细分析解释包括Web Services的各种核心技术,在分析阐述的同时,使用了大量的应用设计案例和基于Microsoft.NET的开发实例,以使读者能够更形象地理解这些技术与技术的设计...
西安电子科技大学 Web Services 技术 java
Web Services 杨永智 MCT/MVP 微软校园大使
Web+Services:技术、架构和应用
学习web services 的很好的帮手,敬请下载!!
西安电子科技大学 Web Services 技术 java
部分web services的开发文档,也许大家有更好的,希望多多分享!
Web Services基本概念介绍 Web Services体系结构 Web Services协议 Web Service开发 Web Services软件产品介绍
本书包括以下内容: ·强调Web基础技术的力量 —— HTTP应用协议、URI命名标准与XML标记语言 ·介绍面向资源的架构(ROA),设计RESTful Web Services的常识规则集合 ·揭示RESTful的设计如何比远程过程调用(RPC)...
用Java 和WebServices 技术实现移动位置服务 用Java 和WebServices 技术实现移动位置服务
Web Services概述 Web Services技术 SOA网格服务体系结构 Web Services实现技术
本书向读者介绍了什么是REST、什么是面向资源...本书详实、易懂,实战性强,提供了大量RESTful Web服务开发的最佳实践和指导,适合广大的Web开发人员、Web架构师及对Web开发或Web架构感兴趣的广大技术人员与学生阅读。
本文介绍了Java与.NET开发的Web Services相互调用的技术。本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web Services,第二部分介绍了如何用Java做客户端调用.NET开发的Web Services。
从企业信息集成面临的问题出发,分析了企业应用集成的目标、存在的问题以及目前已有的异构数据库集成技术,在此基础上提出了基于Web Services实现异构数据库集成的体系框架,对其实现过程中的关键技术给出了详细描述...
NET平台下WebServices的技术研究与实现.nh NET平台下WebServices的技术研究与实现.nh NET平台下WebServices的技术研究与实现.nh NET平台下WebServices的技术研究与实现.nh
本文简要分析了我国餐饮业信息化的现状,论证了当前...提出了采用Web Services和无线互联网技术相结合的改进思想和解决方案,并对基于Web Services的餐饮信息化服务平台的核心思想、整体架构和实现技术进行了详细论述。
自2006年, Amazon Web Services (简称 AWS)开始以网络服务的形式向企业提供IT基础设施服务—— 这也就是如今广为人知的云计算。核心优势之一,在于其能够取代基础设施带来的前期投入,且可以极低成本根据业务需求...