1. 工具:apache-cxf-3.2.2,使用其wsdl2java工具进行Java代码生成
2. 使用apache-cxf-3.2.2对wsdl协议的实现类
3. 步骤:
1)使用./bin/wsdl2java -d target.code.dir -client wsdl-url 将wsdl-url的文档转换成java代码存放于target.code.dir;最后生成的文件包含输入、输出对象实体,需要调用的业务service类及方法。
2)修改生成的_Client.java来构造请求客户端,核心代码如下:
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
public void main(String[] args) {
JaxWsProxyFactoryBean factoryBean = new JaxWsProxyFactoryBean();
factoryBean.setServiceClass(YourService.class);
factoryBean.setAddress("http://ip:port/path?wsdl");
// todo: 构造自己的参数对象Parm, 并赋值
YourParm parameter = new YourParm();
// 构造service实体类
YourService impl = (YourService) factoryBean.create();
YourReturn ret = impl.yourMethod(parameter);
System.out.println(ret);
}依赖的jar包,maven:
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>apache-cxf</artifactId>
<version>3.2.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/wsdl4j/wsdl4j -->
<!--注:修复java.lang.NoClassDefFoundError: ElementExtensible-->
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.6.3</version>
</dependency>
本文介绍了如何使用Apache CXF 3.2.2工具,通过wsdl2java将WSDL文档转换为Java代码,生成服务接口和客户端调用代码。在实际操作中,主要步骤包括:将WSDL转换为Java代码并生成服务类和服务接口,然后在客户端代码中构造请求以调用WebService服务。此外,还提到了所需依赖的Maven jar包。
894

被折叠的 条评论
为什么被折叠?



