在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/*");
}
相关推荐
MediaTea1 分钟前
Python 库手册:gc 垃圾回收
java·开发语言·jvm·python·算法
碎像1 分钟前
阿里云 ARMS 应用实时监控服务
java·阿里云·云计算
l***91472 分钟前
常见的 Spring 项目目录结构
java·后端·spring
j***12154 分钟前
java进阶1——JVM
java·开发语言·jvm
f***R81 小时前
HeidiSQL导入与导出数据
java
q***71014 小时前
Spring Boot(快速上手)
java·spring boot·后端
n***84074 小时前
十七:Spring Boot依赖 (2)-- spring-boot-starter-web 依赖详解
前端·spring boot·后端
better_liang6 小时前
每日Java面试场景题知识点之-分布式事务处理
java·微服务·面试·springcloud·分布式事务
爱学习的小可爱卢7 小时前
JavaEE进阶——SpringMVC响应处理详解
spring boot·postman·javaee
7***68438 小时前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot