SOAP、WSDL、 UDDI之间的关系

时间:2023-03-04 10:30:20

SOAP(Simple Object Access Protocol) 简单对象访问协议;

WSDL(Web Services Description Language) Web服务描述语言;

UDDI (Universal Description Discovery and Integration) 统一描述、发现和整合规范。

WSDL用来描述服务;

UDDI用来注册和查找服务;

而SOAP,作为传输层,用来在消费者和服务提供者之间传送消息。SOAP是Web服务的默认机制,其他的技术为可以服务实现其他类型的绑定。

用户可以在UDDI注册表(registry)查找服务,取得服务的WSDL描述,然后通过SOAP来调用服务。

Web Services 是一个可以将应用程序变为web应用程序,将自己本地的应用程序信息通过网络,发布到网络当中,让别人通过浏览器等访问本地的信息。
SOAP 是定义访问Web Services 的协议,也就是哪些是可以访问的,怎样的格式才能够访问,返回的格式又是什么样的,这些都是SOAP定义的。
WSDL 是描述SOAP协议的具体语言,用WSDL实现SOAP协议,把它写成文件,直接访问。
UDDI,是把这些web services 收集和存储起来,这样当别人访问这些信息的时候就从UDDI中查找,看有没有这个信息存在。

如何调用Web Services 
   
  客户端:取得服务端的服务描述文件WSDL,解析该文件的内容,了解服务端的服务信息,以及调用方式。根据需要,生成恰当的SOAP请求消息(指定调用的方法,已经调用的参数),发往服务端。等待服务端返回的SOAP回应消息,解析得到返回值。

  服务端:生成服务描述文件,以供客户端获取。接收客户端发来的SOAP请求消息,解析其中的方法调用和参数格式。根据WSDL和WSML的描述,调用相应的COM对象来完成指定功能,并把返回值放入SOAP回应消息返回给用户。

SOAP ,WSDL 和UDDI 是Web Services 框架的核心技术..(1)SOAP 是Web services 的通信协议。SOAP是一种简单的、轻量级的基于XML 的机制,用于在网络应用程序之间进行结构化数据交换。SOAP包括三部分:一个定义描述消息内容的框架的信封,一组表示应用程序定义的数据类型实例的编码规则,以及表示远程过程调用和响应的约定。 (2)WSDL表示WEB服务说明语言。WSDL文件是一个XML 文档,用于说明一组SOAP消息以及如何交换这些消息。 (3)UDDI(统一描述发现和集成) 提供一种发布和查找服务描述的方法。UDDI 数据实体提供对定义业务和服务信息的支持。WSDL 中定义的服务描述信息是UDDI注册中心信息的补充。

Web Services 的体系架构如图1 所示

SOAP、WSDL、 UDDI之间的关系

Web Services 服务提供方通过WSDL描述所提供的服务,并将这一描述告知Web Services 注册服务器。注册服务器依据WSDL 的描述,依照UDDI的协定更新服务目录并在Internet 上发布。用户在使用Web Services 前先向注册服务器发出请求,获得Web Services 提供者的地址和服务接口信息,之后使用SOAP 协议与Web Services 提供者建立连接,进行通信。

Web Services 的技术主要建立在XML 的规范之上,这保证了这一体系结构的平台无关性、语言无关性和人机交互性能。

SOAP消息代理是整个框架的信息处理中心,它根据预先定义好的应用消息转换机制将消息转换成目标应用需要的数据并存储到应用消息仓库中。除了保存和转发应用消息之外,消息代理还负责将不同的企业应用所保存的应用数据通过企业模型转化为一致的企业数据,保存到数据库中。

  客户端通过UDDI的标准和机制来搜寻需要的web服务,绑定找到的web服务并使用它提供的服务。另外,框架为企业进一步发展电子商务提供了接口,建立在UDDI基础上的Web services可以完成这一功能。