那下面该wsdl文件进行说明:
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="control"
targetNamespace="http://192.168.14.194:8888"
xmlns:tns="http://192.168.14.194:8888"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns="urn:control"
xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:HTTP="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:MIME="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:DIME="http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/"
xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<types>
<schema targetNamespace="urn:control"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns="urn:control"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="unqualified"
attributeFormDefault="unqualified">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<!-- operation request element -->
<element name="add">
<complexType>
<sequence>
<element name="num1" type="xsd:int" minOccurs="1" maxOccurs="1"/><!-- ns__add::num1 -->
<element name="num2" type="xsd:int" minOccurs="1" maxOccurs="1"/><!-- ns__add::num2 -->
</sequence>
</complexType>
</element>
<!-- operation response element -->
<element name="addResponse">
<complexType>
<sequence>
<element name="sum" type="xsd:int" minOccurs="0" maxOccurs="1"/><!-- ns__add::sum -->
</sequence>
</complexType>
</element>
<!-- operation request element -->
<element name="div">
<complexType>
<sequence>
<element name="num1" type="xsd:int" minOccurs="1" maxOccurs="1"/><!-- ns__div::num1 -->
<element name="num2" type="xsd:int" minOccurs="1" maxOccurs="1"/><!-- ns__div::num2 -->
</sequence>
</complexType>
</element>
<!-- operation response element -->
<element name="divResponse">
<complexType>
<sequence>
<element name="result" type="xsd:int" minOccurs="0" maxOccurs="1"/><!-- ns__div::result -->
</sequence>
</complexType>
</element>
</schema>
</types>
<message name="addRequest">
<part name="Body" element="ns:add"/><!-- ns__add::ns__add -->
</message>
<message name="addResponse">
<part name="Body" element="ns:addResponse"/>
</message>
<message name="divRequest">
<part name="Body" element="ns:div"/><!-- ns__div::ns__div -->
</message>
<message name="divResponse">
<part name="Body" element="ns:divResponse"/>
</message>
<portType name="controlPortType">
<operation name="add">
<documentation>Service definition of function ns__add</documentation>
<input message="tns:addRequest"/>
<output message="tns:addResponse"/>
</operation>
<operation name="div">
<documentation>Service definition of function ns__div</documentation>
<input message="tns:divRequest"/>
<output message="tns:divResponse"/>
</operation>
</portType>
<binding name="control" type="tns:controlPortType">
<SOAP:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="add">
<SOAP:operation soapAction=""/>
<input>
<SOAP:body use="literal" parts="Body"/>
</input>
<output>
<SOAP:body use="literal" parts="Body"/>
</output>
</operation>
<operation name="div">
<SOAP:operation soapAction=""/>
<input>
<SOAP:body use="literal" parts="Body"/>
</input>
<output>
<SOAP:body use="literal" parts="Body"/>
</output>
</operation>
</binding>
<service name="control">
<documentation>gSOAP 2.8.103 generated service definition</documentation>
<port name="control" binding="tns:control">
<SOAP:address location="http://localhost/add.cgi"/>
</port>
</service>
</definitions>
* types元素,定义了交换信息的数据格式(具体是使用XML模式语言声明在WSDL文档中的其他位置使用的复杂数据类型与元素)。
*message元素指定XML 数据类型组成消息的各个部分。message元素用于定义操作的输入和输出参数
(
*message:用来定义消息格式
*part:指定引用types中定义的数据格式
)
* portType(端口)元素中定义了Web服务的操作。操作定义了输入和输出数据流中可以出现的XML消息。
(
*operation:用来提供服务的的方法
*input:指定客戶端应用传过来的数据,会引用上面的而定义的<message>
*output:指定服务端返回给客户的数据,会引用上面的而定义的<message>
)
* binding 元素(引用端口)描述特定服务接口的协议、数据格式、安全性和其它属性(绑定定义的web服务)。
(
*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"/>:文本数据
)
* service元素。服务元素包含一组port元素。端口将端点与来自服务接口定义的binding 元素关联起来。
* port指定一个绑定的地址,这样定义一个通信的终端。
(
*service:一个webservice的容器
*name:属性:它用以指定一个服务端处理请求的入口
* binding属性:引用上面定义的<binding>(用于设置这个service)
*address:当前webservice的请求地址
)