Web  Service平台主要涉及的技术有SOAP(Simple  Object  Access  Protocal,简单对象访问协议), WSDL(Web  Service  Description  Language, Web  Service描述语言),  UDDI(Universal  Description  and  Integration ,统一描述、发现和整合协议).

一、SOAP(简单对象访问协议)

SOAP(Simple  Object  Access  Protocal,简单对象访问协议)是一种具有扩展性的XML消息协议,SOAP允许一个应用程序向另一个应用程序发送XML消息,SOAP消息是从SOAP发送者传至SOAP接受者的单路消息,任何应用程序均可作为发送者或接受者。SOAP仅定义消息结构和消息处理的协议,与底层的传输协议独立。因此,SOAP协议能通过HTTP,JMS或SMTP协议传输。

SOAP依赖于XML文档来构建,一条SOAP消息就是一份特定的XML文档,SOAP消息包含如下三个主要元素:

1、必需的<Envelope.../>根元素,SOAP消息对应的XML文档以该元素作为根元素。

2、可选的<Header.../>元素,包含SOAP消息的头消息。

3、必需的<Body.../>元素,包含所有的调用和响应消息。

就目前的SOAP消息的结构来看,<Envelope.../>根元素的通常只能包含两个子元素,第一个子元素是可选的<Header.../>元素,第二个元素是必需的<Body.../>元素。

二、WSDL(Web  Service描述语言)

WSDL(Web  Service  Description  Language,Web  Service描述语言)使用XML描述Web  Service,包括访问和使用Web  Service所必须的信息,定义该Web  Service的位置、功能及如何通信等描述信息。

一般来说,只要调用者能够获取Web  Service对应的WSDL,就可以从中了解它所提供的服务及如何调用Web  Service。因为一份WSDL文件清晰地定义了三个方面的内容。

1、WHAT部分:用于定义Web  Service所提供的操作(或方法),也就是Web  Service能做些什么。由WSDL中的<types.../>、<message.../>和<portType.../>元素定义。

2、HOW部分:用于定义如何访问Web  Service,包括数据格式详情和访问Web  Service操作的必要协议。也就是定义了如何访问Web  Service。

3、WHERE部分:用于定于Web  Service位于何处,如何使用特定协议决定的网络地址(如URL)指定。该部分使用<service.../>元素定义,可在WSDL文件的最后部分看到<service.../>元素。

一份WSDL文档通常可分为两个部分:

第一个部分定义了服务接口,它在WSDL中由<message.../>元素和<portType.../>两个元素组成,其中<message.../>元素定义了操作的交互方式。而<portType.../>元素里则可包含任意数量的<operation.../>元素,每个<operation.../>元素代表一个允许远程调用的操作(即方法)。

第二个部分定义了服务实现,它在WSDL中由<binding.../>元素和<service.../>两个元素组成,其中<binding.../>定义使用特定的通信协议、数据编码模型和底层通信协议,将Web  Service服务接口定义映射到具体实现,而<service.../>元素则包含一系列<port.../>子元素,<port.../>子元素将会把绑定机制、服务访问协议和端点地址结合在一起。

三、UDDI(Universal  Description , Description  and  Integration,统一描述、发现和整合协议)是一套信息注册规范,它具有如下特点:

1、基于Web。

2、分布式。

UDDI包括一组允许企业向外注册Web  Service、以使其他企业发现访问的实现标准。UDDI的核心组件是UDDI注册中心,它使用XML文件来描述企业及其提供的Web  Service。

通过使用UDDI,Web  Service提供者通过UDDI注册中心,从而允许其他企业来调用企业注册的Web  Service。Web  Service提供者通过UDDI注册中心的Web界面,将它所提供的Web  Service的信息加入UDDI注册中心。该Web  Service就可以被发现和调用。

Web  Service使用者也通过UDDI注册中心查找、发现自己所需的服务。当Web  Service使用者找到自己所需的服务之后,可以将自己绑定到指定的Web  Service提供者,再根据该Web  Service对应的WSDL文档来调用对方的服务。

Web Service平台概述的更多相关文章

  1. Web Service平台有三种元素构成:SOAP、WSDL、UDDI。区别和联系

    Web Service平台有三种元素构成:SOAP.WSDL.UDDI.一个消费者可以在UDDI注册表查找服务,取得服务的WSDL描述,然后通过SOAP来调用服务.SOAP.WSDL.UDDI的区别如 ...

  2. Android开发之使用Web Service进行网络编程

    使用Web Service进行网络编程 Android应用通常都是执行在手机平台上.手机系统的硬件资源是有限的,无论是存储能力还是计算能力都有限.在Android系统上开发.执行一些单用户.小型应用是 ...

  3. Web Service简要概念,学习记录!

    Web Service平台需要一套协议来实现分布式应用程序的创建.任何平台都有它的数据表示方法和类型系统.要实现互操作性,Web Service平台必须提供一套标准的类型系统,用于沟通不同平台.编程语 ...

  4. 什么是web service

    一.序言 大家或多或少都听过WebService(Web服务),有一段时间很多计算机期刊.书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多吹嘘和做广告的成分.但是不得不承认的是Web ...

  5. Web Service(一) 基础学习

    1 基础的Web Service平台是XML+HTTP. 2 Web Service平台的元素包括:SOAP(Simple Object Access Protocol)简单对象访问协议: UDDI( ...

  6. web service介绍

    WEB SEVICE平台 web Service 三种基本元素: SOAP .WSDL .UDDI 什么是SOAP:       XML+HTTP 基本的Web Service平台 SOAP 简易对象 ...

  7. 什么是Web Service?

    Web service到底是什么:在什么情况下你应该使用Web service. 分布式应用程序和浏览器 研究一下当前的应用程序开发,你会发现一个绝对的倾向:人们开始偏爱基于浏览器的瘦客户应用程序.这 ...

  8. web service 组件

    web service 组件 基本的 web service 平台是 XML + HTTP.所有标准的 web service 使用以下组件: SOAP(简单对象访问协议) UDDI(通用描述.发现与 ...

  9. 什么是web service ?

    一.序言 大家或多或少都听过WebService(Web服务),有一段时间很多计算机期刊.书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多吹嘘和做广告的成分.但是不得不承认的是Web ...

随机推荐

  1. 配置MyBatis

    创建WebProject之后先把mybatis-3.2.2.zip里的mybatis-3.2.2.jar包和lib里的asm-3.3.1.jar.cglib-2.2.2.jar.commons-log ...

  2. 关于IP地址的一个细节问题

    使用ip2long()和long2ip()函数把IP地址转成整型存放进数据库而非字符型.这几乎能降低1/4的存储空间.同时可以很容易对地址进行排序和快速查找;

  3. transition、animation在macbook air上图片动画边缘抖动

    示例: BUG描述: 最近同事一项目中,产品提出在macbook air上,列表图片放大效果边缘出现抖动现象.在retina屏上没有此问题. 调试过程: 1.单独把结构分离.确定是否由其他元素引起. ...

  4. Spark分析笔记

    前言 第一章 Spark简介 本章将对Spark做一个介绍,以及它的一些基本概念 Spark是什么? Spark生态系统BDAS Spark架构 Spark分布式与单机多核架构的异同 Spark的企业 ...

  5. XML标签

    SQL标签库提供了创建和操作XML文档的标签. 引入语法:<%@ taglib prefix="x" uri="http://java.sun.com/jsp/js ...

  6. Map.Entry

    Map.Entry Map是java中的接口,Map.Entry是Map的一个内部接口. Map提供了一些常用方法,如keySet().entrySet()等方法,keySet()方法返回值是Map中 ...

  7. 一、Docker之旅

    刚刚接触到docker的同事可能会一头雾水,docker到底是一个什么东西,先看看官方的定义. Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔 ...

  8. cf 700 B Connecting Universities

    题意:现在给以一棵$n$个结点的树,并给你$2k$个结点,现在要求你把这些节点互相配对,使得互相配对的节点之间的距离(路径上经过边的数目)之和最大.数据范围$1 \leq n \leq 200000, ...

  9. Jeff Dean

    "--出自"关于 Jeff Dean 的事实" 其实,"关于 Jeff Dean 的事实"这个G+ 帖中描述的并非是真实的.不过有人大费周折为他建立了 ...

  10. 深度优先搜索(DFS)

    定义: (维基百科:https://en.wikipedia.org/wiki/Depth-first_search) 深度优先搜索算法(Depth-First-Search),是搜索算法的一种.是沿 ...