1. 声明
当前内容主要为调用webservice,主要使用wsimport方式实现webservice方法调用,当前的webservice基于SpringBoot中使用WebService(简单的使用)
主要内容:
- 使用wsimport生成wsdl的java调用代码
- 使用生成的java代码实现webservice中的方法调用
2. 启动webservice
启动当前的webservice后,访问http://localhost:8081/show?wsdl
的结果如下
该wsdl中就是用于描述该webservice中存在服务名称和可以执行操作的方法名称:主要为一个show方法
对于webservice的方法调用其实就是基于soap协议调用
(调用方法可以使用工具SOAPUI来进行测试)
3. 使用wsimport工具生成webservice的调用代码
使用wsimport -keep 你的webservice的wsdl地址
wsimport -keep http://localhost:8081/show?wsdl
此时会生成一个文件夹,文件夹中具有java文件和class文件
将得到的java代码导入到测试工程中
其中impl中的MyServiceImplService就是方法调用实现类,MyService就是服务接口(主要通过代理方式实现方法调用)
4. 编写并调用测试
package com.hy.springboot.webservice.demo;
import com.hy.springboot.webservice.demo.service.impl.MyService;
import com.hy.springboot.webservice.demo.service.impl.MyServiceImplService;
/**
*
* @author hy
* @createTime 2022-01-22 10:09:05
* @description 实现调用webservice
*
*/
public class AppTest {
public static void main(String[] args) {
MyServiceImplService myServiceImplService = new MyServiceImplService();
MyService myService = myServiceImplService.getMyServiceImplPort();
String show = myService.show();
System.out.println("call show method result==>"+show);
}
}
调用结果:
测试成功
5. 总结
1. webservice的方法调用协议就是soap协议(http+xml协议),参考百度百科
2. wsimport是Java的bin中提供的一个对于wsdl进行服务解析和方法调用的代码生成工具