`
zenghuiss
  • 浏览: 26060 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

webservice学习笔记(一)

    博客分类:
  • Web
阅读更多
学习webservice之前先将相关知识了解一下,从wsdl开始:
WSDL-web service description language
利用如下元素描述某个webservice
WSDL文档可以分为两部分。顶部分由抽象定义组成,而底部分则由具体描述组成。抽象部分以独立于平台和语言的方式定义SOAP消息,它们并不包含任何随机器或语言而变的元素。这就定义了一系列服务,截然不同的应用都可以实现。具体部分,如数据的序列化则归入底部分,因为它包含具体的定义。<types>、<message>、<portType>属于抽象定义层,<binding>、<service>属于具体定义层。所有的抽象可以是单独存在于别的文件中,也可以从主文档中导入
1.<definitions>
<wsdl:definitions
targetNamespace=""
xmlns:apachesoap=""
xmlns:impl=""     
xmlns:intf=""
xmlns:wsdl=""  
xmlns:wsdlsoap=""
xmlns:xsd="">
<definitions>定义了文档中用到的各个xml元素的namespace缩写,也界定了本文档自己的 targetNamespace 这意味着其它的XML要引用当前XML中的元素时,要声明这个namespace。

2.<protType>
<portType>web service执行的操作-描述一个web service、可被执行的操作,以及相关的消息
相当于编程语言中的函数库。
<message>web service使用的消息,相当于编程语言中的一个函数调用的参数<types>web service使用的数据类型,一般使用XML Schema语法来定义参数的数据类型
<binding>web service使用的通信协议,为每个端口地定义消息格式和协议细节

一个简单的例子:
<message name="inputMsg">
	<part name="input" type="xs:string">
</message>
<message name="outputMsg">
	<part name="output" type="xs:string">
</message>
<portType name = "test">
 <operation name="Msg" parameterOrder="input">
	<input message="inputMsg">
	<output message="outputMsg">
 </operation>
</portType>


此例中,<portType>定义了一个名为test的端口,Msg为某个操作的名称,操作中拥有一个inputMsg的输入消息,以及outputMsg的输出消息。
类比于传统编程语言,test相当于一个库函数,而get是一个以inputMsg为输入参数,outputMsg为返回对象的函数。

<operation>是最普通的操作类型,wsdl为其定义了4种方式:
one-way:可接受消息,但不会返回响应
request-response:接受一个请求,并返回一个响应
solicit-response:发送一个请求,并等待一个响应
notification:发送一个消息,不会等待响应

3.<binding>
<binding>标签是完整描述协议、序列化和编码的地方,<types>,<message>和<portType>标签处理抽象的数据内容,而<binding>标签是处理数据传输的物理实现。
<binding>标签把前三部分的抽象定义具体化。

它有两个属性 name和type,name定义的是binding的名称,而type指向binding的端口
<soap:bindng>元素有两个属性 style和transport
style可取值"rpc"/"document",transoprt则定义了要使用的soap协议
<operation>子标签将portType中定义的 operation同SOAP的请求绑定同时,定义了操作名称soapAction,确定如何对输入输出的信息进行编码,下面的列子使用了"literal"。
<binding type="test" name="myWebService">
 <soap:binding style="document" transoprt="http://***.com/soap/http"/>
  <operation>
 	<soap:operation soapAction="http://***.com/get">
	<input>
	 <soap:body use="literal"/>
	</input>
	<output>
	 <soap:body use="literal"/>
	</output>
  </operation>
<binding>

分享到:
评论

相关推荐

    WebService学习笔记

    【WebService学习笔记】 WebService是一种基于互联网的、标准化的、跨平台的、跨语言的通信机制,使得不同系统间的应用程序可以互相交互数据和服务。它的核心理念是服务导向架构(SOA),即通过服务的方式实现应用...

    webservice学习笔记doc文档

    在本学习笔记中,主要介绍了使用Apache Axis2框架来开发和测试Web Service的过程。Apache Axis2是Apache SOAP栈的一个实现,提供了简单且高效的Web Service开发工具。 首先,开发者需要在Eclipse集成开发环境中搭建...

    尚硅谷Webservice学习笔记

    在本篇尚硅谷的学习笔记中,主要涉及了Web Service的基础概念、Schema约束、HTTP协议以及相关面试问题。 1. Schema约束: - Schema是XML Schema Document的缩写,它是一种XML格式,用于定义其他XML文档的结构和...

    WebService学习笔记0001

    【WebService学习笔记0001】 在IT领域,WebService是一种基于开放标准(如XML、SOAP、WSDL和UDDI)的互操作性技术,它允许不同系统间的应用程序通过网络进行通信。本学习笔记将围绕WebService的核心概念、工作原理...

    webservice学习笔记 -- XFrie

    【Web Service学习笔记——XFrie框架详解】 Web Service是一种通过网络进行通信的服务,它允许不同的应用程序之间进行数据交换,跨越了操作系统和编程语言的障碍。XFrie是一个轻量级、高性能的Java Web Service框架...

    Webservice学习笔记.doc

    Web Service是一种基于开放标准的技术,允许不同的应用程序之间通过互联网交换数据,实现跨平台、跨语言的互操作性。它的核心理念是创建无需用户界面就能与其他应用交互的Web应用程序。例如,在金融行业中,一个股票...

    webservice学习笔记

    ### WebService 学习笔记详解 #### 一、实验环境搭建与配置 在开始Web Service的学习之前,首先需要搭建一个适合开发的环境。本实验基于以下配置: - 操作系统:Windows 2000 (Win2k) - JDK版本:1.6 - Java EE...

    122158-Webservice学习笔记.doc

    Web服务是一种基于互联网的软件应用接口,允许不同的应用程序之间进行数据交换,无需考虑它们所运行的操作系统或编程语言。Web服务的核心技术包括HTTP、XML和SOAP,这些是确保跨平台和跨语言兼容的关键。 1. **HTTP...

    WebService 学习

    【WebService学习】 WebService是一种基于互联网的、松散耦合的分布式计算模型,它允许不同的系统之间进行数据交换和业务交互。这项技术的核心是利用XML(可扩展标记语言)作为数据交换的标准格式,SOAP(简单对象...

    122158_Webservice学习笔记.doc

    Web服务是一种基于互联网的技术,允许不同的应用程序之间进行数据交换,不受操作系统、编程语言或平台的限制。这种松耦合的特性使得Web服务成为跨企业、跨系统的集成解决方案。本篇文章将深入探讨Web服务的核心概念...

    Andorid访问WebService的学习笔记

    NULL 博文链接:https://sunwei-07.iteye.com/blog/1139814

    webService笔记

    webservice学习笔记1DTD是为了校验XML 2语法 3 schema

    Spring.NET学习笔记21——整合WebService的例子

    刘冬编写的Spring.NET学习笔记21——整合WebService的例子。 原文:http://www.cnblogs.com/GoodHelper/archive/2009/11/19/SpringNet_WebService.html

    CXF webservice初学笔记

    【CXF Webservice初学笔记】 在IT行业中,Web服务是一种允许不同系统之间进行通信和交换数据的方法。Apache CXF是一个流行的开源框架,用于构建和部署Web服务。本笔记将探讨CXF Webservice的基础知识,包括其核心...

Global site tag (gtag.js) - Google Analytics