使用JDK自带功能生成WebService客户端文件

使用JDK自带功能生成WebService客户端文件

首先打开命令行到JDK的bin目录下找不到的可以查看电脑系统的环境变量,看自己的电脑中的JDK在哪个目录下

然后使用命令:

wsimport -s 下载到本地的目录名 -p 包名 -encoding utf-8 地址链接

此时客户端文件已生成,直接使用就可以。

那么生成后的客户端文件应该如何使用呢?

入参确定:
首先,我们应该找到客户端文件中的接口文件,这个接口文件里面是我们调用接口时需要传递的入参,这时候入参就可以确定下来了,此时要注意,一般的WebService接口入参都是XML格式,所以我们不可以使用JSON字符串进行传递数据,我们需要创建对应的入参对象,然后向对象中放入对应值

接口调用:
要调用接口的时候,我们先要去看客户端文件中有一个继承了service的类,这个类就是我们的接口方法。
我们要观察他的参数,例如地址,对象等数据是否为公开类型的,如果为公开类型直接调用就可以,如果为私有类型则需要我们手动创建对象
手动创建对象时,需要创建URL对象,我使用的是下面这种方法进行字符串转URL的:

        URL url = ResourceUtils.getURL(字符串的地址);

然后创建对应service类的对象
最后创建对应接口的对象调用service类的方法,将构建好的入参填入直接调用就可以了。

最新补充一下,上面如果没看懂的话可直接看代码
1.通过JDK创建了客户端文件如下图
WebService客户端文件
2.调用的代码内容如下图

		//注意部分对象为客户端文件对象,所以你的对象名称与我的并不一定相同
        URL url = ResourceUtils.getURL(zZWorkUrl);
        QueryWorksService service = new QueryWorksService(url);
        QueryWorksServicePortType zZWorks = service.getQueryWorksServiceHttpSoap11Endpoint();
        String result = zZWorks.queryWorks(方法调用参数);

如果WebService地址需要指定用户名密码
那么我们要在地址前添加 -Xauthfile 参数指定用户名密码文件
例如-Xauthfile D:\test\authfile.txt
为指定D盘test目录下的authfile文件为用户名密码文件
文件内保存如下内容

http://用户名:密码@连接地址

例:

// 源地址
http://192.168.102.11:8080/Service.asmx?wsdl

// authfile.txt文件中地址
http://test:111111@192.168.102.11:8080/Service.asmx?wsdl
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值