- 前言: 第一次接触WebService,工作需要,调用外部的WebService接口,所以暂时我这里不考虑发布,做个记录,待以后回来可以看看,只是最初级的,所以有何不好、不对的地方,欢迎看到的同僚给予指正。
- 准备:
- 说明:我这里很简单,直接将WSDL生产客户端
- wsdl 地址:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl 这个是别人给我发的 QQ在线检测wsdl的RUL
- IDEA 或者 Eclipse 工具
- 开始:
1. 创建Java项目即可(我这里使用的是idea)
2. src下创建包 cn.com.webxml 选择OK即可。。
3. Windows + R 回车 打开运行 输入 cmd 进入dos命令
4.选择一个文件夹,将要存放生成的客户端(比如:D:work,我这只是演示就在D盘的根目录了)
5. 使用JDK的wsimport命令,这个可以解析wsdl,生成本地文件(Java文件被称为客户端)
关于wsimport 命令,这里不多解释, 具体可以看下这个 https://www.cnblogs.com/liaojie970/p/4797076.html
在dos里运行(这里的 http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl 就是WSDL的URL):wsimport -s . http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl
6.将编译后的Java文件放置于你的项目里(只要 .Java)
目前目录结构
7.增加一个class,创建客户端代理对象,可以远程调用了
8.TestQqApp.java 代码如下:
ackage cn.com.webxml; /** * @author: WengQuan * @Date: 2018/8/31 0031 10:45 * @Description: */ public class TestQqApp { public static void main(String[] args) { QqOnlineWebService ts = new QqOnlineWebService(); //创建客户端代理对象,远程调用 QqOnlineWebServiceSoap proxy = ts.getQqOnlineWebServiceSoap(); String result = proxy.qqCheckOnline("28682188");//QQ号 System.out.println(result); } }
9.运行main
10.关于控制台验证打印信息可以在浏览器中打开wsdl的URL查看wsdl提供方解释