springboot整合webservice修改cxf自动生成wsdl的soap:address location

近期系统中的webservice接口要上线

通过http://localhost:8080/webServices/testService?wsdl走网关访问时,返回的<soap:address location>是真实业务服务的ip:port。因为我们只能暴露网关的ip和端口,需要将真实服务的ip和端口隐藏起来。

复制代码
    @Bean
    public Endpoint messagePoint() throws IOException {
        EndpointImpl endpoint = new EndpointImpl(this.springBus(), this.testService);
        endpoint.setPublishedEndpointUrl("http://yourdomain.com/yourServicePath");
        endpoint.publish("/testService");
        return endpoint;
    }

这时候我们在创建Endpoint的时候,可以通过配置setPublishedEndpointUrl()展示wsdl文件中<soap:address location>发布地址。

效果如下:

复制代码
<wsdl:service name="testService">
<wsdl:port binding="tns:testServiceSoapBinding" name="TestServiceImplPort">
<soap:address location="http://yourdomain.com/yourServicePath"/>
</wsdl:port>
</wsdl:service>
相关推荐
Soofjan5 小时前
(三)Go Map 1.24之前是什么
后端
我叫黑大帅5 小时前
Go 语言中处理「未知类型数据」的两大核心手段
后端·面试·go
小码哥_常5 小时前
从@RequestBody数据消失,到回调验签失败:一次棘手问题排查全记录
后端
小码哥_常5 小时前
Spring Boot 动态菜单权限系统:解锁企业级权限管理新姿势
后端
Java编程爱好者5 小时前
面试官:ConcurrentHashMap 为什么在 JDK 1.8 中废弃分段锁?
后端
SimonKing6 小时前
JetBrains+Qoder变身Agentic 编码平台,媲美Cursor、Trae等AI编程平台
java·后端·程序员
shark_chili6 小时前
Spring AI Alibaba深度实战:一文掌握智能体开发全流程
后端
Seven976 小时前
NIO:解开非阻塞I/O高并发编程的秘密
java
摸鱼的春哥7 小时前
吃龙虾🦞咯!万字拆解OpenClaw的架构与设计
前端·javascript·后端