Spring ServletRegistrationBean不';t适用于多个URL映射路径
我正在开发代码,在下面的bean中,我想允许对Spring ServletRegistrationBean不';t适用于多个URL映射路径,spring,spring-boot,soap,spring-ws,Spring,Spring Boot,Soap,Spring Ws,我正在开发代码,在下面的bean中,我想允许对/*和/service/*执行请求,所以我改为 @Bean public ServletRegistrationBean messageDispatcherServlet(ApplicationContext applicationContext){ MessageDispatcherServlet servlet = new MessageDispatcherServlet(); servlet.setApplicationCont
/*
和/service/*
执行请求,所以我改为
@Bean
public ServletRegistrationBean messageDispatcherServlet(ApplicationContext applicationContext){
MessageDispatcherServlet servlet = new MessageDispatcherServlet();
servlet.setApplicationContext(applicationContext);
servlet.setTransformWsdlLocations(true);
return new ServletRegistrationBean(servlet, "/service/*");
}
到
当我们执行
/service/*
url时,以下配置不起作用。我们如何解决这个问题?映射对我来说很有效。我下载了示例,并根据您的问题进行了更改
我看到了注册的映射(日志)和加载的wsdl(浏览器),如屏幕截图所示
将servlet:'messageDispatcherServlet'映射到[/*,/service/*]
Spring启动日志
Soap请求响应
不确定什么对你不起作用。“当我们执行/service/*url时,下面的配置不起作用。”您是否尝试将更具体的url映射放在第一位?我不会有多大帮助,因为我已经很长一段时间没有用SOAP做太多了。是的,我已经先尝试了更具体的,然后再尝试了更通用的,但它不起作用。您能帮我吗?您能用
/**
更改/*
,并确保WSDL11定义。setLocationUri
根据端点正确使用,如果答案有帮助,请再试一次
@Bean
public ServletRegistrationBean messageDispatcherServlet(ApplicationContext applicationContext){
MessageDispatcherServlet servlet = new MessageDispatcherServlet();
servlet.setApplicationContext(applicationContext);
servlet.setTransformWsdlLocations(true);
return new ServletRegistrationBean(servlet, "/*","/service/*");
}