文章背景图

使用Apache CXF 的 wsdl2java生成webService代码

2025-03-28
27
-
- 分钟

前言:在jdk1.8的时候使用的是内建的JAX-WS,升级springboot3.2之后报错,故修改为Apache CXF。


操作步骤

添加Maven依赖

<dependency>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-rt-frontend-jaxws</artifactId>
    <version>4.0.3</version>
</dependency>
<dependency>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-rt-transports-http</artifactId>
    <version>4.0.3</version>
</dependency>

生成客户端代码

打开命令行窗口,执行以下脚本

wsdl2java -d src -client url

其中src表示代码生成的路径,url标识webservice接口地址

调用服务

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;

public class Client {
    public static void main(String[] args) {
        JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
        factory.setServiceClass(XXXService.class);
        factory.setAddress(url);
        XXXService client = (XXXService) factory.create();
        XXXResponse response = client.pushXXX(XXXRequest);
    }
}

评论交流

文章目录