springboot2调用webservice接口

springboot2调用webservice接口

  • 一、添加依赖
  • 二、接口调用过程

参考文章:
https://my.oschina.net/648885471/blog/4692202
拓展阅读:
https://zhuanlan.zhihu.com/p/139464954
https://zhuanlan.zhihu.com/p/139464464

tips:项目使用的springboot版本是2.2.5.RELEASE版本,此篇只展示简单的调用过程


一、添加依赖

<dependency>
	<groupId>org.apache.cxfgroupId>
	<artifactId>cxf-spring-boot-starter-jaxwsartifactId>
	<version>3.2.5version>
 dependency>

二、接口调用过程

import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;

import javax.xml.namespace.QName;

/**
 * 
 * webservice调用测试接口
 * 
* * @author hoopy_y * @since 2021/11/6 */
public class TestWebSevice { public static final String URL = "http://ip:port/xxx/XxxService?wsdl"; public static final String NAMESPACE_URL = "http://xxxxx/"; public static final String METHOD_NAME = "methodName"; public static final String PARAM_STR = "xxx"; public static void main(String[] args) { JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance(); // 创建动态客户端, URL -> 接口地址 Client client = dcf.createClient(URL); // 创建QName, NAMESPACE_URL -> 命名空间,METHOD_NAME -> 方法名 QName qName = new QName(NAMESPACE_URL, METHOD_NAME); try { // 接口调用 PARAM_STR -> xml参数字符串 Object[] objects = client.invoke(qName, PARAM_STR); // 返回的数据 System.out.println(objects[0].toString()); } catch (Exception e) { e.printStackTrace(); } } }

拿到返回数据之后,对数据进行处理,转换成符合自己项目规范的数据即可。

你可能感兴趣的:(spring,boot,java,后端)