WebService的三要素:SOAP、WSDL和UDDI。soap用来描述传递信息的格式,wsdl描述如何访问具体的接口,uddi管理、分发查询WebService。

1、SOAP

SOAP Simple Object Access Protocol简单对象访问协议,是一种简单轻量的交换数据的规范。

soap也是基于xml的文档,包括Envelope、header、body等元素。它定义了一个框架,用来描述消息的内容。

如何查看?

我们可以通过工具来了解SOAP的传送数据方式。

1)在MyEclipse中打开web Service Explorer

2)输入已经发布的服务地址,如图:

3)可以看到之前的add和minus方法,输入参数,执行。

我们可以看到,SOAP的request和response的文档都是xml格式的,而且都符合上面介绍的规范。

2、wsdl

大家都知道WebService可以实现跨平台的可互操作性,它的描述语言wsdl,使得我们更方便的协调工作,传递消息和数据。

wsdl Web Services Description Language 网络服务描述语言,以xml的格式在WebService中用来描述一个服务的信息。下图是wsdl的基本内容结构:

具体实例可参考:【WebService】——入门实例

是由xml编写的,主要分两部分:抽象定义和具体描述。基本元素有type、message、part、operation、binding、service等。

1)definition

wsdl的根元素,一般包含若干个xml命名空间。targetNamespace

2)Message

属于抽象定义内容,有一个或多个Part(消息参数)组成。

例如:

上篇博客创建的服务中,我们提供了add()方法,可以看到wsdl中的元素信息。

3)Operation

对服务支持的操作进行的抽象描述,简单的说,一般可以理解成服务中提供的具体方法。

input  输入信息,

output 输出信息

4)Service

相关端口的集合,http://localhost:5554/service/访问地址。

5)types、binding、portType

wsdl还有一些元素很重要,但平时的开发中可能接触并不多。

types  使用的数据类型

binding 通信协议

portType 指出该WebService支持的操作(方法)。

3、UDDI

Universal Description Discovery and Integration 通用描述、发现和集成服务

最开始就介绍到它是可以实现查询、管理WebService的,下图描述了UDDI在web服务协议栈中所处的位置。

小结:

最开始接触WebService的时候,只是在用它,并没有去学习它的原理。现在一点点深入的了解中,再次学习了RPC、xml中的DTD和schema、SOAP消息机制。

【WebService】——SOAP、WSDL和UDDI的更多相关文章

  1. WebService SOAP WSDL UDDI 使用php的curl、PHP5的SoapClient实现同步

    一.基本名词 WebService: WebService是一种跨编程语言和跨操作系统平台的远程调用技术.不同系统,不同语言的数据交换方法都是不同的,这就导致在不同系统,不同语言之间传递数据很麻烦,基 ...

  2. webservice SOAP WSDL UDDI简介

    WebServices简介 先给出一个概念 SOA ,即Service Oriented Architecture ,中文一般理解为面向服务的架构, 既然说是一种架构的话,所以一般认为 SOA 是包含 ...

  3. 彻底理解webservice SOAP WSDL

    WebServices简介 先给出一个概念 SOA ,即Service Oriented Architecture ,中文一般理解为面向服务的架构, 既然说是一种架构的话,所以一般认为 SOA 是包含 ...

  4. 【🉐】 彻底理解webservice SOAP WSDL

    原文: http://wenku.baidu.com/view/f87b55f19e31433239689314.html WebServices简介 先给出一个概念 SOA ,即Service Or ...

  5. webservice soap wsdl简介

    先给出一个概念 SOA ,即Service Oriented Architecture ,中文一般理解为面向服务的架构, 既然说是一种架构的话,所以一般认为 SOA 是包含了运行环境,编程模型, 架构 ...

  6. [Java] webservice soap,wsdl 例子

    java 调用webservice的各种方法总结 现在webservice加xml技术已经逐渐成熟,但要真正要用起来还需时日!! 由于毕业设计缘故,我看了很多关于webservice方面的知识,今天和 ...

  7. Webservice soap wsdl区别之个人见解

    原文:http://blog.csdn.net/pautcher_0/article/details/6798351 Web Service实现业务诉求:Web Service是真正“办事”的那个,提 ...

  8. 理解WebService SOAP WSDL

    WebServices简介 先给出一个概念 SOA ,即Service Oriented Architecture ,中文一般理解为面向服务的架构, 既然说是一种架构的话,所以一般认为 SOA 是包含 ...

  9. (文摘)彻底理解webservice SOAP WSDL

    WebServices特点介绍 WebServices 提供一个建立分布式应用的平台,使得运行在不同操作系统和不同设备上的软件,或者是用不同的程序语言和不同厂商的软件开发工具开发的软件,所有可能的已开 ...

  10. SOAP、WSDL、 UDDI之间的关系

    SOAP(Simple Object Access Protocol) 简单对象访问协议: WSDL(Web Services Description Language) Web服务描述语言: UDD ...

随机推荐

  1. 用HANA STADIO 开发ABAP程序

    Help-->Install New Software-->ADD NAME: hana_on_mars Location: https://tools.hana.ondemand.com ...

  2. ABAP术语-Authorization Object

    Authorization Object 原文:http://www.cnblogs.com/qiangsheng/archive/2007/12/20/1006585.html Element of ...

  3. 爬虫——使用BeautifulSoup4的爬虫

    我们以腾讯社招页面来做示例:http://hr.tencent.com/position.php?&start=0#a 如上图,使用BeautifulSoup4解析器,将图1中229页,每页1 ...

  4. jdbc最基础的mysql操作

    1.基本的数据库操作 这里连接数据库可以做成一个单独的utils类,我这里因为程序少就没有封装. 虽然现在jdbc被其他框架取代了,但这是框架的基础 如下:第一个是插入数据操作 package Dat ...

  5. JDK7 新特性

    JDK7新特性的目录导航: 二进制字面值 switch 语句支持 String try-with-resources catch 多个类型异常 字面值中使用下划线 类型推断 改进泛型类型可变参数 其它 ...

  6. mongodb的高级查询

    db的帮助文档 输入:db.help(); db.AddUser(username,password[, readOnly=false])  添加用户 db.auth(usrename,passwor ...

  7. 批处理,%~d0 cd %~dp0 代表什么意思

    批处理,%~d0 cd %~dp0 代表什么意思   ~dp0 “d”为Drive的缩写,即为驱动器,磁盘.“p”为Path缩写,即为路径,目录cd是转到这个目录,不过我觉得cd /d %~dp0 还 ...

  8. ElasticSearch : 基础

    #新建索引以及类型: PUT http://10.18.43.3:9200/test { "settings": { "number_of_shards": 3 ...

  9. 《linux设备驱动开发详解》笔记——15 linux i2c驱动

    结合实际代码和书中描述,可能跟书上有一定出入.本文后续芯片相关代码参考ZYNQ. 15.1 总体结构 如下图,i2c驱动分为如下几个重要模块 核心层core,完成i2c总线.设备.驱动模型,对用户提供 ...

  10. scrapy框架爬取笔趣阁

    笔趣阁是很好爬的网站了,这里简单爬取了全部小说链接和每本的全部章节链接,还想爬取章节内容在biquge.py里在加一个爬取循环,在pipelines.py添加保存函数即可 1 创建一个scrapy项目 ...