<?xml version="1.0" encoding="utf8"?>
<wsdl:definitions targetNamespace="http://www.57market.com.cn/HelloService"
xmlns:soapenc12="http://www.w3.org/2003/05/soapencoding"
xmlns:tns="http://www.57market.com.cn/HelloService"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soap12="http://www.w3.org/2003/05/soapenvelope">
<!--
* type元素,定义了交换信息的数据格式。
* 为了实现最大的互操作性(interoperability)和平台中立性(neutrality),WSDL选用XML Schema DataTypes
* 简称XSD作为标准类型系统,并将它作为固有类型系统。
* 下面是数据定义部分,该部分定义了两个元素,一个是sayHello,一个是sayHelloResponse:
* sayHello:定义了一个复杂类型,仅仅包含一个简单的字符串,将来用来描述操作的参入传入部分;
* sayHelloResponse:定义了一个复杂类型,仅仅包含一个简单的字符串,将来用来描述操作的返回值;
-->
<wsdl:types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified"
elementFormDefault="qualified" targetNamespace="http://www.57market.com.cn/HelloService">
<xsd:element name="sayHello">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="in0" nillable="true" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="sayHelloResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<!--
* message元素指定XML数据类型组成消息的各个部分。message元素用于定义操作的输入和输出参数。
* 该部分是信息格式的抽象定义:定义了两个消息sayHelloResponse和sayHelloRequest:
* sayHelloRequest:sayHello操作的请求消息格式,由一个消息片断组成,名字为parameters,
* 元素是我们前面定义的types中的元素;
* sayHelloResponse:sayHello操作的响应消息格式,由一个消息片断组成,名字为parameters,
* 元素是我们前面定义 *的types中的元素;
* 如果采用RPC样式的消息传递,只需要将文档中的element元素应以修改为type即可。
* message:用来定义消息的结构
* part:指定引用types中定义的标签部分
-->
<wsdl:message name="sayHelloRequest">
<wsdl:part name="parameters" element="tns:sayHello" />
</wsdl:message>
<wsdl:message name="sayHelloResponse">
<wsdl:part name="parameters" element="tns:sayHelloResponse" />
</wsdl:message>
<!--
* portType元素中定义了Web服务的操作。操作定义了输入和输出数据流中可以出现的XML消息。
* 一些抽象操作的集合。每个操作关联一个输入消息和一个输出消息。
* portType定义了服务的调用模式的类型,这里包含一个操作sayHello方法,同时包含input和output表明
* 该操作是一个请求/响应模式,请求消息是前面定义的sayHelloRequest,
* 响应消息是前面定义的sayHelloResponse。input表示传递到Web服务的有效负载,
* output: 消息表示传递给客户的有效负载。
* portType:用來定义服务端的SEI
* operation:用來指定SEI中的處理請求的方法
* input:指定客戶端应用传过来的数据,会引用上面的而定义的<message>
* output:指定服务端返回给客戶端的数据,会引用上面的而定义的<message>
-->
<wsdl:portType name="HelloServicePortType">
<wsdl:operation name="sayHello">
<wsdl:input name="sayHelloRequest" message="tns:sayHelloRequest" />
<wsdl:output name="sayHelloResponse" message="tns:sayHelloResponse" />
</wsdl:operation>
</wsdl:portType>
<!--
* binding元素描述特定服务接口的协议、数据格式、安全性和其它属性。
* 针对操作和portType中使用的消息指定实际的协议和数据格式规范。
* binding: 用于定义SEI的实现类
* type属性:引用上面的<portType>
* <soap:operation style="document" />绑定的数据是一个document(xml)
* operation:用來定义实现的方法
* <soap:operation style="document" />传输的是document(xml)
* input:指定客戶端应用传过来的数据
* <soap:body use="literal" />:文本数据
* output:指定服务器端返回客戶端的数据
* <soap:body use="literal"/>:文本数据
-->
<wsdl:binding name="HelloServiceHttpBinding" type="tns:HelloServicePortType">
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="sayHello">
<wsdlsoap:operation soapAction="" />
<wsdl:input name="sayHelloRequest">
<wsdlsoap:body use="literal" />
</wsdl:input>
<wsdl:output name="sayHelloResponse">
<wsdlsoap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<!--
* service元素。服务元素包含一组port元素。端口将端点与来自服务接口定义的binding元素关联起来。
* port指定一个绑定的地址,这样定义一个通信的终端。
* service:一個webservice的容器
* name:属性:它用以指定一個服务器端处理请求的入口(就是SEI的实现)
* binding属性:引用上面定义的<binding>
* address:当前webservice的请求地址
-->
<wsdl:service name="HelloService">
<wsdl:port name="HelloServiceHttpPort" binding="tns:HelloServiceHttpBinding">
<soap:address location="http://localhost:8080/xfire/services/HelloService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

webservice wsdl文件标签讲解的更多相关文章

  1. WebService 之 WSDL文件 讲解

    原文地址:http://blog.csdn.net/tropica/archive/2008/11/02/3203892.aspx 恩,我想说的是,是不是经常有人在开发的时候,特别是和第三方有接口的时 ...

  2. webservice 服务端例子+客户端例子+CXF整合spring服务端测试+生成wsdl文件 +cxf客户端代码自动生成

    首先到CXF官网及spring官网下载相关jar架包,这个不多说.webservice是干嘛用的也不多说. 入门例子 模拟新增一个用户,并返回新增结果,成功还是失败. 大概的目录如上,很简单. Res ...

  3. So easy Webservice 5.WSDL 文件说明

    WSDL – WebService Description Language – Web服务描述语言 通过XML形式说明服务在什么地方-地址. 通过XML形式说明服务提供什么样的方法 – 如何调用. ...

  4. WebService如何根据WSDL文件转换成本地的C#类

    WebService有两种使用方式,一种是直接通过添加服务引用,另一种则是通过WSDL生成. 添加服务引用大家基本都用过,这里就不讲解了. 那么,既然有直接引用的方式,为什么还要通过WSDL生成呢? ...

  5. 根据wsdl文件生成webservice 的.cs文件 及 生成dll C#调用

               Visual Studio 2013->Visual Studio Tools->VS2013 开发人员命令提示 命令行输入 wsdl E:\WS.wsdl /out ...

  6. webservice 的wsdl文件生成客户端java类

    提供两个方法: 第一个: 发布webservice项目后, 地址栏地址  http://localhost:8888/lxitedu.webservice.cxf-ch2/services/userS ...

  7. eclipse根据.wsdl文件自动生成webservice的调用客户端

    1.工具:eclipse3.3或者是带有webservice插件的eclipse 2. 首先用浏览器访问webservice的站点,接着保存打开的页面,后缀为.wsdl. 3.把保存好的文件拷入ecl ...

  8. C#根据WSDL文件生成WebService服务端代码

    转自:http://www.cnblogs.com/liyi93/archive/2012/01/30/2332320.html 虽然现在已经进入了.NET FrameWork 4.0的时代,WebS ...

  9. WebService 之 WSDL文件 解说

    恩,我想说的是,是不是常常有人在开发的时候,特别是和第三方有接口的时候,走的是SOAP协议,然后用户给你一个WSDL文件,说依照上面的进行适配,嘿嘿,这个时候,要是你曾经没有开发过,肯定会傻眼,那假设 ...

随机推荐

  1. Java开发程序员必须要学会的linux命令总结

    查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件. find . -name "*.xml" 递归查找所有的xml文 ...

  2. BAT 五路internet负载均衡

    一个网上下载的bat文件 也不记得从那里下载的了 记得似乎需要管理员权限运行 依稀记得测试有效 放在这里做个记录 @echo off echo. echo ╭─────────╮ echo ╭──── ...

  3. jmeter非GUI模式命令

    一.如果没有.jtl文件,运行如下命令: jmeter -n -t baidu.jmx -l result.jtl 以非GUI形式运行Jmeter脚本jmeter -n -t baidu.jmx -l ...

  4. 洛谷 P3133 [USACO16JAN]Radio Contact G

    题目传送门 解题思路: f[i][j]表示FJ走了i步,Bessie走了j步的最小消耗值.方程比较好推. 横纵坐标要搞清楚,因为这东西WA了半小时. AC代码: #include<iostrea ...

  5. 一百一十四、SAP查看事务代码对应工程源码

    一.比如我们想看ZMMR008的源码,输入事务代码,点击显示 二.点击显示之后,在程序这儿,的双击打开 三.可以看到源码内容

  6. vue学习(五)生命周期 的钩子函数

    生命周期的钩子函数 主要有以下几种 beforeCreate created beforeMount mounted beforeUpdate updated activated deactivate ...

  7. 【转载】webdriver 自动化测试如何定位到动态变化ID的iframe框内

    大家知道,在自动化测试脚本编写过程中,如果页面上跳出一个iframe框时,我们是定位不到框内内容的,可以通过 driver.findElement(By.id("")); driv ...

  8. 【程序员面试金典】面试题 01.03. URL化

    题目 URL化.编写一种方法,将字符串中的空格全部替换为%20.假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的"真实"长度.(注:用Java实现的话,请使用字符数组实现 ...

  9. POJ 2996:Help Me with the Game

    Help Me with the Game Time Limit: 1000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64 ...

  10. 如何在Ubuntu 18.04上安装和卸载TeamViewer

    卸载命令:sudo apt --purge remove teamviewer 安装:https://www.linuxidc.com/Linux/2018-05/152282.htm 如何在Ubun ...