快速业务通道

J2EE的Web服务原理和体系结构慨述 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23

J2EE的Web服务原理和体系结构慨述

时间:2010-12-06

Web服务(Web Services)是目前程序设计领域中的一项新技术,是一个崭新 的分布式计算模式,在不同系统平台之间具有互操作性,通过因特网,实现不同 应用程序之间的远程过程调用。Web服务使用基于XML 的消息处理作为基本的数 据通讯方式,消除使用不同组件模型、操作系统和编程语言的系统之间存在的差 异,使异类系统能够作为单个计算网络协同运行。开发人员可以用象过去在创建 分布式应用程序时使用组件一样的方式创建将来自各种源的Web服务组合在一起 的应用程序。 Web服务是建立在一些通用协议的基础上,如HTTP,SOAP,XML, WSDL,UDDI等。这些协议在涉及到操作系统、对象模型和编程语言的选择时,没 有任何倾向,因此将会有很强的生命力。Web服务是一种不涉及具体平台和语言 的软件架构,但是开发人员必须选择一种语言来具体开发Web服务。本文选用 Java语言,说明J2EE的Web服务体系结构。

一、J2EE的Web服务工作原理

1、J2EE的Web服务模型

大家知道,普通Web服务的系统架构是面向服务的,服务的发布的发现是Web 系统架构中首先要解决的主要问题。在java编程环境下,Web 服务通过JAXR (java API for XML Registries)实现自身的发布。客户使用同样的JAXR API 寻找服务,使用JAX-RPC绑定和调用Web服务。如下图1所示:

J2EE的Web服务原理和体系结构慨述 - 编程入门网

图1

2、J2EE在消息发送层(SOAP)和传输协议层(HTTP)的工作过程

用下图2可以说明,在具有Web服务功能的应用程序服务器上运行着一个标准 的J2EE应用程序。在图中的左上角是Java,C++或C#客户机,现在,这个应用程 序发出SOAP请求。该SOAP请求把Web服务操作封装在一个XML有效载荷中,然后, 通过HTTP协议传送。在Web服务端,传输层继续把该调用输送剑SOAP服务端,然 后,服务器就调用相应的已经展现为Web服务的J2EE功能。Web服务产生的任何响 应都会被再编码成为一个SOAP响应,并通过HTTP协议传输回客户机去。

J2EE的Web服务原理和体系结构慨述 - 编程入门网

图2

从图2中可以清楚地看出,利用消息发送层(Messaging layer) (SOAP)和传输 协议层(Transoort Network laver) (HTTP)就可以完成应用程序内部的通信。应 用程序内部通信的问题通过一些销售商的专有技术(例如CORBA和DCOM等)以前就 已经解决了。这些技术操作起来很麻烦,并且,也不能通过防火墙。因此,现在 我们用SOAP,通过简单的XML这个开放式的标准,就可以有效地实现应用程序内 部的通信,不会使自己锁定在某个销售商的专有机制上。

3、J2EE在消息发送层(SOAP)、传输协议层(HTTP)和Web服务描述(WSDL )的工作过程

图3显示的是对前面所介绍的Web服务模式的简单扩展;在图3中只需要在两个 应用程序之间传递的SOAP消息之间存在着紧密的耦合。现在,有了一个附加的 Web服务描述层,服务提供者就可以用建立和发行WSDL文档的方法来描述他们的 Web服务。WSDL文档中不仅包含有该Web服务的抽象定义,而且也包含有实现(绑 定)该Web服务的细节。这意味着服务的消费者(即例子中的客户应用程序)需要得 到WSDL文档,它不仅可以从这个文档中得到包括Web服务的消息和数据类型的不 同操作,而且还能够重新得到该Web服务的终端(例如URL),SOAP消息可以在终端 上交换。如果J2EE服务是通过SMTP消息展示功能的,那么WSDL文档也会描述这一 点。

J2EE的Web服务原理和体系结构慨述 - 编程入门网

图3

4、J2EE使用UDDI、WSDL和SOAP三种技术的工作过程

在图4中假设服务提供者已经决定把某项商业功能展示成Web服务。该Web服务 驻留在一个基于Java的Web服务系统中。通过图中的顺序步骤看一下整个的工作 机制。

  J2EE的Web服务原理和体系结构慨述 - 编程入门网

图4

1)服务提供者的第一步是编写WSDL文件。当前市场上有好几种工具,可以帮 助我们用现有的对象定义产生出WSDL文件。然后,需要发布关于它自己的信息, 把商业和这项Web服务的技术

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号