WSDL 标准:http://www.w3.org/TR/wsdl
请参看上述网站的内容。
我写的这篇帖子只是作为参考,加深理解。
wsdl的结构划分
1、WSDL 头定义
例如:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.sccs.sunyard.com/wxtcService/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="wxtcService" targetNamespace="http://www.sccs.sunyard.com/wxtcService/">
其中 xmlns:tns、 targetNamespace是需要自己定义的,当然你也可以保留默认http://example.com
2、wsdl:types
wsdl:types 允许你定义一些<xsd:element/>及<xsd:complexType>
定义这些时,有一些xml schemal 的常识有助于你的理解。
示例:
<wsdl:types>
<xsd:schema targetNamespace="http://www.sccs.sunyard.com/wxtcService/">
<xsd:complexType name="RequestHeader">
<xsd:sequence>
<xsd:element name="businessAcceptId" type="xsd:string"></xsd:element>
<xsd:element name="TrnCode" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="TestService">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="in" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="TestServiceRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="RequestHeader" type="tns:RequestHeader"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="TestServiceResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ResponseHeader" type="tns:ResponseHeader"></xsd:element>
<xsd:element name="Content">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="RequestHeader" type="tns:RequestHeader"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</wsdl:types>
3、wsdl:message
用于定义webservice的输入和输出。
示例:
<wsdl:message name="TestServiceRequest">
<wsdl:part name="parameters" element="tns:TestServiceRequest"></wsdl:part>
</wsdl:message>
<wsdl:message name="TestServiceResponse">
<wsdl:part name="parameters" element="tns:TestServiceResponse"></wsdl:part>
</wsdl:message>
4、wsdl:portType
定义webservice的主体。webservice将在这里组成。
<wsdl:portType>
<wsdl:operation name="TestService">
<wsdl:documentation>测试示例</wsdl:documentation>
<wsdl:input message="tns:TestServiceRequest"></wsdl:input>
<wsdl:output message="tns:TestServiceResponse"></wsdl:output>
</wsdl:operation>
</wsdl:portType>
在这里引用前面message中定义的内容,组成webservice的访问主体,包括输入、输出等。
5、wsdl:binding
可以将binding看成访问webservice的入口。
<wsdl:binding name="WXTCServiceSOAPBinding" type="tns:IWXTCService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="TestService">
<soap:operation soapAction="http://www.sccs.sunyard.com/wxtcService/TestService"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
若这里没有定义TestService ,则TestService 将不可访问。
6、 wsdl:service
webservice的总入口,实际上,在wsdl的编辑工具中,该部件的图标就是一个接口图标。
这与其在整体wsdl中的位置很恰当
<wsdl:service name="WXTCService">
<wsdl:port binding="tns:WXTCServiceSOAPBinding" name="IWXTCServicePort">
<soap:address location="http://localhost:8000/SCCS/services/WXTCService"/>
</wsdl:port>
</wsdl:service>
总结:
wsdl 的调用流程?
wsdl:service==>wsdl:binding==>wsdl:portType==>message==>wsdl:types
分享到:
相关推荐
本文将详细阐述如何在Postman中配置并调用WSDL接口。 首先,我们需要理解WSDL。WSDL是一种XML格式的规范,用于定义网络服务,特别是Web服务的接口。它包含了服务的位置、操作以及如何调用这些操作的信息。在Postman...
在本案例中,我们将关注如何通过注解来修改WebService生成的WSDL(Web Services Description Language)信息,以实现服务名称、命名空间、返回值以及调用方法的定制,同时增强服务的安全性。 首先,让我们理解WSDL...
对服务的安全性和性能有特殊要求,需要调整默认的WSDL配置。 8. **开发流程**:使用这样的工具通常包括以下几个步骤:定义服务接口(包括操作、输入/输出消息)、配置通信协议和绑定、设置服务地址和端点,然后使用...
4. **实例分析**:可能包含具体的UDDI和WSDL配置示例,帮助读者理解实际操作流程。 **Wsdl4j** 是一个Java库,用于处理WSDL文档,包括读取、写入和修改WSDL文件。开发者可以使用Wsdl4j来生成客户端代理类,这使得...
标题中的“NC65配置WSDL文件生成工具.rar”指的是一个针对NC65(可能是某个特定的企业资源计划系统或软件开发平台的版本号)的工具,该工具专门用于生成WSDL文件。这通常意味着它可以帮助开发者自动化创建描述Web...
这个配置文件可能包含了`wsdl.exe`运行时的配置信息,如默认的命名空间映射、数据类型转换规则等。用户可以根据需要修改这些设置来影响`wsdl.exe`生成WSDL文档的方式。 5. **生成的WSDL文档结构** WSDL文档通常...
7. **服务部署**:生成WSDL后,可以通过CXF的Servlet或Spring配置将服务部署到应用服务器上,供客户端调用。 8. **客户端生成**:CXF还支持从WSDL生成Java客户端代码,使得调用Web服务变得更加简单,只需按照生成的...
本文将详细介绍三种基于WSDL生成WebService服务端的方法:使用`wsdl2java`命令、通过SOAPUI工具及借助MyEclipse的Web Service项目功能。 #### 方法一:使用`wsdl2java`命令生成 `wsdl2java`是Apache CXF提供的一个...
ONVIF(Open Network Video Interface Forum)是一种开放的国际标准,...通过理解和使用这些WSDL文件,开发者能够创建出与各种ONVIF设备通信的应用,实现网络视频监控系统中的设备发现、配置、控制和数据传输等功能。
- 在Eclipse中创建WSDL文件的步骤,包括文件的导入或创建、配置路径的指定以及具体信息的配置。 - 对于Eclipse中资源的管理,包括如何查看和编辑WSDL文件。 - 技术论坛作为获取和分享技术经验的平台,对于学习和解决...
1. **Ant任务**:在Ant构建脚本中,添加`axis:wsdl2java`任务,配置相应的属性,如WSDL文件、输出目录等。 2. **Maven插件**:在Maven的`pom.xml`文件中,引入`org.apache.axis2:axis2-maven-plugin`,配置`...
配置WSDL文件** 在接下来的界面中,指定目标文件的父目录以及新WSDL文档的名称,例如命名为“myService.wsdl”。 **5. 完成WSDL文件创建** 点击“Next”直至“Finish”,完成WSDL文件的创建。此时,会在指定的...
- **命令行参数**:运行`wsdl2java`时,可以指定各种参数,比如指定输出目录 (`-d`)、选择代码生成模式 (`-frontend`) 或指定特定的绑定配置 (`-b`)。 - **修改路径**:根据实际项目需求,用户可能需要修改Wsdl2...
WSDL(Web Services Description Language)是一种XML格式,用于定义网络服务的接口,描述了服务的位置、消息格式以及如何调用这些服务。对于iOS开发者来说,与Web服务交互时,通常需要将WSDL接口转换为Objective-C...
本文将深入探讨如何使用MyEclipse集成开发环境来调用Axis工具,通过WSDL(Web Service Description Language)文件生成客户端代码。这个过程对于理解Web服务的生命周期和客户端开发流程至关重要。 首先,我们需要...
- 设置服务端点:配置代理类,指定服务的实际运行地址。 - 调用服务:通过代理类的方法,传递必要的参数,调用服务并处理返回结果。 - 异常处理:考虑网络问题、服务异常等各种可能的错误情况,添加适当的异常...
1、安装jdk Java开发环境 2、编辑(包名,输出路径,wsdl)参数并运行WSDL2Java(URL).bat或者WSDL2Java(file).bat后,将在source中生成WebService客户端代码。 3、直接使用生成的代码调用WebService服务即可。
1. 安装并配置Apache CXF环境。 2. 打开命令行,定位到CXF的bin目录。 3. 输入命令`wsdl2java -d <output_directory> <wsdl_file>`,其中是生成代码的目标目录,<wsdl_file>是WSDL文件的路径。 4. 等待命令执行完成...
1. `devicemgmt.wsdl`: 设备管理服务,用于设备配置、状态查询、固件升级等基本操作。 2. `media.wsdl`: 媒体服务,处理视频流和音频流的传输,包括实时播放、录像回放和流媒体控制。 3. `deviceio.wsdl`: 设备输入/...
### 参数配置 `wsdl2java`提供了丰富的命令行参数,可以定制生成代码的样式、数据绑定机制、异常处理等。例如: - `-frontend`:选择不同的前端处理器,如JAXWS,用于控制生成的代码风格。 - `-d`:指定输出目录,...