在Spring Boot应用程序中配置了两个不同的SOAP Web服务端点

新建一个CustomMessageDispatcherServlet类,以扩展以下MessageDispatcherServlet类,

java 复制代码
import org.springframework.ws.transport.http.MessageDispatcherServlet;

import javax.servlet.http.HttpServletRequest;

public class CustomMessageDispatcherServlet extends MessageDispatcherServlet {

    @Override
    protected String transformWsdlLocation(HttpServletRequest request, String wsdlLocation) {
        String requestUri = request.getRequestURI();

        if (requestUri.contains("/WebservicesConnector/services/countries")) {
            return "countries.wsdl";
        } else if (requestUri.contains("/FinancingService/FinancingUpdate.asmx")) {
            return "kinsai.wsdl";
        }

        return super.transformWsdlLocation(request, wsdlLocation);
    }
}

そして、messageDispatcherServletメソッド内で、新しいカスタムのMessageDispatcherServletを設定します。

java 复制代码
@Bean
public ServletRegistrationBean<CustomMessageDispatcherServlet> messageDispatcherServlet() {
    CustomMessageDispatcherServlet servlet = new CustomMessageDispatcherServlet();
    servlet.setApplicationContext(applicationContext);
    servlet.setTransformWsdlLocations(true);
    return new ServletRegistrationBean<>(servlet, "/ws/*");
}
相关推荐
●VON7 分钟前
重生之我在暑假学习微服务第四天《Docker-下篇》
java·学习·docker·微服务·容器
优创学社27 分钟前
Springboot社区养老保险系统小程序
java·spring boot·后端
努力奋斗的小涛涛9 分钟前
java导出pdf(使用html)
java·pdf
Rockson37 分钟前
Websocket实时行情接口 (2025最新使用教程)
java·javascript·websocket
wr3541010661 小时前
Mac电脑使用IDEA启动服务后,报service异常
java·ide·spring boot·macos·tomcat·maven·java-consul
金銀銅鐵1 小时前
Kotlin 中的运算符重载在 class 文件中是如何实现的?(第一部分)
java·kotlin
77qqqiqi1 小时前
Docker
java·docker·微服务
转转技术团队1 小时前
MyBatis拦截器在服务内存防护场景中的应用
java·性能优化·mybatis
Joker—H1 小时前
【Java】JVM虚拟机(java内存模型、GC垃圾回收)
java·开发语言·jvm·经验分享·个人开发·gc
黑白极客2 小时前
用动态的观点看加锁
java·数据库·oracle