在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/*");
}
相关推荐
阿强7719 分钟前
包装类缓存对象
java·缓存·包装类
LUCIAZZZ1 小时前
TCP基本入门-简单认识一下什么是TCP
java·网络·后端·网络协议·tcp/ip·计算机网络·spring
卜及中1 小时前
【Docker基础】理解 Registry 镜像仓库:分类、工作机制、命令与实操
java·docker·容器·eureka
_未知_开摆2 小时前
2020年蓝桥杯Java B组第二场题目+部分个人解析
java·经验分享·后端·程序人生·蓝桥杯
m0_748234522 小时前
Spring Boot整合WebSocket
spring boot·后端·websocket
m0_748232392 小时前
SpringBoot Maven 项目 pom 中的 plugin 插件用法整理
spring boot·后端·maven
虾球xz2 小时前
游戏引擎学习第126天
java·学习·游戏引擎
郑祎亦3 小时前
Java 关键字 volatile
java·开发语言·jvm
不会飞的小龙人3 小时前
Quickwit获取Kafka数据源消息
java·docker·容器·kafka·quickwit
诗诗的博客3 小时前
jmeter聚合报告如何添加单位_性能测试连载(8)jmeter压力测试中的难点解析
java·开发语言