利用wsdl2java工具生成webservice的客户端代码
1、JDK环境
2、下载apache-cxf发布包:http://cxf.apache.org/download.html 目前最新版本为3.2.6,

解压后如下:

解压发布包,设置CXF_HOME,并添加%CXF_HOME %/bin到path环境变量。


3、CMD命令行输入wsdl2java -help,有正常提示说明环境已经正确配置。

4、命令使用
此命令主要是生成webservice的客户端代码,服务端可以是自行开发的服务,也可以是需要对接的服务接口,最简单的命令如下:
wsdl2java wsdlurl
其中wsdlurl为服务发布的访问地址,未写参数默认生成的是客户端的代码,其中用得最多的是-encoding 参数,是指定java代码的编码格式,例如:
wsdl2java -encoding wsdlurl
其他详细的参数及说明可以用wsdl2java -help或wsdl2java -h获取,根据实际的需求设置相应的参数即可。
5、简单案例
常用接口:IP地址来源搜索 WEB 服务
1、生成客户端代码
WSDL地址: http://12.21.26.11/spesvc/Opp/Service.asmx?wsdl
使用wsdl2java工具将客户端代码直接生成在eclipse的工程里,eclipse工程地址为:E:\workspace\webservice,命令如下:
wsdl2java -encoding utf-8 -d E:/webservice/src http://12.23.24.24/spesvc/Opp/OppService.asmx?wsdl
-encoding表示生成的Java文件编码格式为utf8,-d表示代码生成路径为E:/workspace/webservice/src。
执行完毕,没有报任何错误,说明执行成功

生成代码文件如下:

6、客户端代码调用服务
写一个小demo,调用发布的IP查询服务

public class test_client {
public static void main(String[] args)
{
OttService service2 = new OttService();
OttServiceSoap serviceSoap = service2.getOttServiceSoap();
String rest = serviceSoap.getPlayListGuidWithDate("2018-09-01");
System.out.println(rest);
}
}
运行结果

利用wsdl2java工具生成webservice的客户端代码的更多相关文章
- 使用java的wsimport.exe工具生成wsdl的客户端代码
在jdk的bin目录下有一个wsimport.exe的工具,使用该工具可以根据wsdl地址生成java的客户端代码. 常用命令如下: wsimport -keep -d d:\ -s d:\src ...
- 使用axis1.4生成webservice的客户端代码
webservice服务端: https://blog.csdn.net/ghsau/article/details/12714965 跟据WSDL文件地址生成客服端代码: 1.下载 axis1.4 ...
- 使用java的wsimport.exe生成wsdl的客户端代码【转】
使用java的wsimport.exe工具生成wsdl的客户端代码 wsimport -keep -d d:\ -s d:\src -p com.map -verbose http://192.168 ...
- 根据wsdl,apache cxf的wsdl2java工具生成客户端、服务端代码
根据wsdl,apache cxf的wsdl2java工具生成客户端.服务端代码 apache cxf的wsdl2java工具的简单使用: 使用步骤如下: 一.下载apache cxf的包,如apac ...
- 用MyEclipse自带工具生成WebService客户端代码
本文章主要是介绍如何利用已经发布了的Webservice的wsdl来自动生成java的客户端代码.注意:本方法需要你采用的java版本是1.5或者以上的版本,采用MyEclipse来自动生成代码. w ...
- C# 利用VS自带的WSDL工具生成WebService服务类
C# 利用VS自带的WSDL工具生成WebService服务类 WebService有两种使用方式,一种是直接通过添加服务引用,另一种则是通过WSDL生成. 添加服务引用大家基本都用过,这里就不讲 ...
- 利用代码生成工具生成基于ABP框架的代码
在前面随笔,我介绍了整个ABP优化过框架的分层模型,包括尽量简化整个ABP框架的各个层的关系,以及纳入一些基类的辅助处理,使得我们对应业务分层类或者接口尽可能减少代码,并具有生产环境所需要的基类接口, ...
- 解析利用wsdl.exe生成webservice代理类的详解
利用wsdl.exe生成webservice代理类:根据提供的wsdl生成webservice代理类1.开始->程序->Visual Studio 2005 命令提示2.输入如下红色标记部 ...
- 动态生成WebService的客户端
给定了WebService地址和调用接口后动态的生成DLL,第二次再请求时会先判断DLL是否存在,以提高执行效率 核心代码下: /// <summary> /// 动态生成WebServi ...
随机推荐
- Django-Filter源码解析一
Django Filter源码解析 最近在看Django-FIlter项目的源码,学习一下别人的开发思想: 整体介绍 首先,我从其中一个测试用例作为入口,开始了debug之路,一点一点的断点,分析它的 ...
- 使用Google-Colab训练PyTorch神经网络
Colaboratory 是免费的 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行.关键是还有免费的GPU可以使用!用Colab训练PyTorch神经网络步骤如下: 1: ...
- netty-socketio 示例代码
socket.io是一个不错的websocket项目,github上有它的java实现:netty-socketio 及 示例项目 netty-socketio-demo,基本上看看demo示例项目就 ...
- STM32F4 Timer Internal Trigger Connection
The Timers can be cascaded to make more complex timing relationships, or longer periods. Internally ...
- What is OpenOCD?
About OpenOCD was created by Dominic Rath as part of a 2005 diploma thesis written at the University ...
- Implementation of Serial Wire JTAG flash programming in ARM Cortex M3 Processors
Implementation of Serial Wire JTAG flash programming in ARM Cortex M3 Processors The goal of the pro ...
- Revit API移动风管
移动风管曲线就可以移动风管 , , ));//向上移动3 ts.Commit(); return Result.Succeeded; } } url:http: ...
- Revit API判断是不是柱族模板
OwnerFamily即族模板.获取类别的方法:Document.Settings.Categories.get_Item(BuiltInCategory.OST_Columns); //判断是不是柱 ...
- 有关AngularJS请求Web API资源的思路
页面部分大致如下: <body ng-app="productManagement"> ... <div ng-include="'app/produc ...
- Eclipse 进入代码定位文件位置