1.pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.owinfo</groupId>
<artifactId>refresh</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>refresh</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<--web service-->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-spring-boot-starter-jaxws</artifactId>
<version>3.3.2</version>
</dependency>
</project>
/**
* 动态调用方式
*/
@Test
public void webServiceTest() throws Exception {
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "shenning");
//1.创建动态客户端
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
Client client = dcf.createClient("http://xxxxxxxx/xxxxxx?wsdl");
// 需要密码的情况需要加上用户名和密码
// client.getOutInterceptors().add(new ClientLoginInterceptor(USER_NAME,PASS_WORD));
//ZhongTai_CAL_MARA为方法名字,后面的是可变参数(invoke("方法名",参数1,参数2,参数3....);)
Object[] objects = client.invoke("ZhongTai_CAL_MARA", jsonObject.toJSONString());
//输出调用结果
System.out.println(objects.toString());
}