commit
f4e90f4512
|
|
@ -266,18 +266,22 @@ public class WebFluxAutoConfiguration {
|
|||
|
||||
@Override
|
||||
protected RequestMappingHandlerAdapter createRequestMappingHandlerAdapter() {
|
||||
if (this.webFluxRegistrations != null
|
||||
&& this.webFluxRegistrations.getRequestMappingHandlerAdapter() != null) {
|
||||
return this.webFluxRegistrations.getRequestMappingHandlerAdapter();
|
||||
if (this.webFluxRegistrations != null) {
|
||||
RequestMappingHandlerAdapter adapter = this.webFluxRegistrations.getRequestMappingHandlerAdapter();
|
||||
if (adapter != null) {
|
||||
return adapter;
|
||||
}
|
||||
}
|
||||
return super.createRequestMappingHandlerAdapter();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected RequestMappingHandlerMapping createRequestMappingHandlerMapping() {
|
||||
if (this.webFluxRegistrations != null
|
||||
&& this.webFluxRegistrations.getRequestMappingHandlerMapping() != null) {
|
||||
return this.webFluxRegistrations.getRequestMappingHandlerMapping();
|
||||
if (this.webFluxRegistrations != null) {
|
||||
RequestMappingHandlerMapping mapping = this.webFluxRegistrations.getRequestMappingHandlerMapping();
|
||||
if (mapping != null) {
|
||||
return mapping;
|
||||
}
|
||||
}
|
||||
return super.createRequestMappingHandlerMapping();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -405,8 +405,11 @@ public class WebMvcAutoConfiguration {
|
|||
|
||||
@Override
|
||||
protected RequestMappingHandlerAdapter createRequestMappingHandlerAdapter() {
|
||||
if (this.mvcRegistrations != null && this.mvcRegistrations.getRequestMappingHandlerAdapter() != null) {
|
||||
return this.mvcRegistrations.getRequestMappingHandlerAdapter();
|
||||
if (this.mvcRegistrations != null) {
|
||||
RequestMappingHandlerAdapter adapter = this.mvcRegistrations.getRequestMappingHandlerAdapter();
|
||||
if (adapter != null) {
|
||||
return adapter;
|
||||
}
|
||||
}
|
||||
return super.createRequestMappingHandlerAdapter();
|
||||
}
|
||||
|
|
@ -491,8 +494,11 @@ public class WebMvcAutoConfiguration {
|
|||
|
||||
@Override
|
||||
protected RequestMappingHandlerMapping createRequestMappingHandlerMapping() {
|
||||
if (this.mvcRegistrations != null && this.mvcRegistrations.getRequestMappingHandlerMapping() != null) {
|
||||
return this.mvcRegistrations.getRequestMappingHandlerMapping();
|
||||
if (this.mvcRegistrations != null) {
|
||||
RequestMappingHandlerMapping mapping = this.mvcRegistrations.getRequestMappingHandlerMapping();
|
||||
if (mapping != null) {
|
||||
return mapping;
|
||||
}
|
||||
}
|
||||
return super.createRequestMappingHandlerMapping();
|
||||
}
|
||||
|
|
@ -510,8 +516,12 @@ public class WebMvcAutoConfiguration {
|
|||
|
||||
@Override
|
||||
protected ExceptionHandlerExceptionResolver createExceptionHandlerExceptionResolver() {
|
||||
if (this.mvcRegistrations != null && this.mvcRegistrations.getExceptionHandlerExceptionResolver() != null) {
|
||||
return this.mvcRegistrations.getExceptionHandlerExceptionResolver();
|
||||
if (this.mvcRegistrations != null) {
|
||||
ExceptionHandlerExceptionResolver resolver = this.mvcRegistrations
|
||||
.getExceptionHandlerExceptionResolver();
|
||||
if (resolver != null) {
|
||||
return resolver;
|
||||
}
|
||||
}
|
||||
return super.createExceptionHandlerExceptionResolver();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -388,16 +388,20 @@ class WebFluxAutoConfigurationTests {
|
|||
|
||||
@Test
|
||||
void customRequestMappingHandlerMapping() {
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerMapping.class)
|
||||
.run((context) -> assertThat(context).getBean(RequestMappingHandlerMapping.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerMapping.class));
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerMapping.class).run((context) -> {
|
||||
assertThat(context).getBean(RequestMappingHandlerMapping.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerMapping.class);
|
||||
assertThat(context.getBean(CustomRequestMappingHandlerMapping.class).handlerMappings).isEqualTo(1);
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
void customRequestMappingHandlerAdapter() {
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerAdapter.class)
|
||||
.run((context) -> assertThat(context).getBean(RequestMappingHandlerAdapter.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerAdapter.class));
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerAdapter.class).run((context) -> {
|
||||
assertThat(context).getBean(RequestMappingHandlerAdapter.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerAdapter.class);
|
||||
assertThat(context.getBean(CustomRequestMappingHandlerAdapter.class).handlerAdapters).isEqualTo(1);
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -646,12 +650,15 @@ class WebFluxAutoConfigurationTests {
|
|||
@Configuration(proxyBeanMethods = false)
|
||||
static class CustomRequestMappingHandlerAdapter {
|
||||
|
||||
private int handlerAdapters = 0;
|
||||
|
||||
@Bean
|
||||
WebFluxRegistrations webFluxRegistrationsHandlerAdapter() {
|
||||
return new WebFluxRegistrations() {
|
||||
|
||||
@Override
|
||||
public RequestMappingHandlerAdapter getRequestMappingHandlerAdapter() {
|
||||
CustomRequestMappingHandlerAdapter.this.handlerAdapters++;
|
||||
return new WebFluxAutoConfigurationTests.MyRequestMappingHandlerAdapter();
|
||||
}
|
||||
|
||||
|
|
@ -674,12 +681,15 @@ class WebFluxAutoConfigurationTests {
|
|||
@Configuration(proxyBeanMethods = false)
|
||||
static class CustomRequestMappingHandlerMapping {
|
||||
|
||||
private int handlerMappings = 0;
|
||||
|
||||
@Bean
|
||||
WebFluxRegistrations webFluxRegistrationsHandlerMapping() {
|
||||
return new WebFluxRegistrations() {
|
||||
|
||||
@Override
|
||||
public RequestMappingHandlerMapping getRequestMappingHandlerMapping() {
|
||||
CustomRequestMappingHandlerMapping.this.handlerMappings++;
|
||||
return new MyRequestMappingHandlerMapping();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -104,6 +104,7 @@ import org.springframework.web.servlet.handler.HandlerExceptionResolverComposite
|
|||
import org.springframework.web.servlet.handler.SimpleUrlHandlerMapping;
|
||||
import org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver;
|
||||
import org.springframework.web.servlet.i18n.FixedLocaleResolver;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
|
||||
import org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver;
|
||||
|
|
@ -553,16 +554,28 @@ class WebMvcAutoConfigurationTests {
|
|||
|
||||
@Test
|
||||
void customRequestMappingHandlerMapping() {
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerMapping.class)
|
||||
.run((context) -> assertThat(context).getBean(RequestMappingHandlerMapping.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerMapping.class));
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerMapping.class).run((context) -> {
|
||||
assertThat(context).getBean(RequestMappingHandlerMapping.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerMapping.class);
|
||||
assertThat(context.getBean(CustomRequestMappingHandlerMapping.class).handlerMappings).isEqualTo(1);
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
void customRequestMappingHandlerAdapter() {
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerAdapter.class)
|
||||
.run((context) -> assertThat(context).getBean(RequestMappingHandlerAdapter.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerAdapter.class));
|
||||
this.contextRunner.withUserConfiguration(CustomRequestMappingHandlerAdapter.class).run((context) -> {
|
||||
assertThat(context).getBean(RequestMappingHandlerAdapter.class)
|
||||
.isInstanceOf(MyRequestMappingHandlerAdapter.class);
|
||||
assertThat(context.getBean(CustomRequestMappingHandlerAdapter.class).handlerAdapters).isEqualTo(1);
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
void customExceptionHandlerExceptionResolver() {
|
||||
this.contextRunner.withUserConfiguration(CustomExceptionHandlerExceptionResolver.class)
|
||||
.run((context) -> assertThat(
|
||||
context.getBean(CustomExceptionHandlerExceptionResolver.class).exceptionResolvers)
|
||||
.isEqualTo(1));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -1085,12 +1098,15 @@ class WebMvcAutoConfigurationTests {
|
|||
@Configuration(proxyBeanMethods = false)
|
||||
static class CustomRequestMappingHandlerMapping {
|
||||
|
||||
private int handlerMappings;
|
||||
|
||||
@Bean
|
||||
WebMvcRegistrations webMvcRegistrationsHandlerMapping() {
|
||||
return new WebMvcRegistrations() {
|
||||
|
||||
@Override
|
||||
public RequestMappingHandlerMapping getRequestMappingHandlerMapping() {
|
||||
CustomRequestMappingHandlerMapping.this.handlerMappings++;
|
||||
return new MyRequestMappingHandlerMapping();
|
||||
}
|
||||
|
||||
|
|
@ -1106,12 +1122,15 @@ class WebMvcAutoConfigurationTests {
|
|||
@Configuration(proxyBeanMethods = false)
|
||||
static class CustomRequestMappingHandlerAdapter {
|
||||
|
||||
private int handlerAdapters = 0;
|
||||
|
||||
@Bean
|
||||
WebMvcRegistrations webMvcRegistrationsHandlerAdapter() {
|
||||
return new WebMvcRegistrations() {
|
||||
|
||||
@Override
|
||||
public RequestMappingHandlerAdapter getRequestMappingHandlerAdapter() {
|
||||
CustomRequestMappingHandlerAdapter.this.handlerAdapters++;
|
||||
return new MyRequestMappingHandlerAdapter();
|
||||
}
|
||||
|
||||
|
|
@ -1124,6 +1143,30 @@ class WebMvcAutoConfigurationTests {
|
|||
|
||||
}
|
||||
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
static class CustomExceptionHandlerExceptionResolver {
|
||||
|
||||
private int exceptionResolvers = 0;
|
||||
|
||||
@Bean
|
||||
WebMvcRegistrations webMvcRegistrationsHandlerAdapter() {
|
||||
return new WebMvcRegistrations() {
|
||||
|
||||
@Override
|
||||
public ExceptionHandlerExceptionResolver getExceptionHandlerExceptionResolver() {
|
||||
CustomExceptionHandlerExceptionResolver.this.exceptionResolvers++;
|
||||
return new MyExceptionHandlerExceptionResolver();
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static class MyExceptionHandlerExceptionResolver extends ExceptionHandlerExceptionResolver {
|
||||
|
||||
}
|
||||
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@Import({ CustomRequestMappingHandlerMapping.class, CustomRequestMappingHandlerAdapter.class })
|
||||
static class MultipleWebMvcRegistrations {
|
||||
|
|
|
|||
Loading…
Reference in New Issue