|
|
|
@ -120,7 +120,7 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
public RequestMappingHandlerMapping requestMappingHandlerMapping() { |
|
|
|
public RequestMappingHandlerMapping requestMappingHandlerMapping() { |
|
|
|
RequestMappingHandlerMapping mapping = createRequestMappingHandlerMapping(); |
|
|
|
RequestMappingHandlerMapping mapping = createRequestMappingHandlerMapping(); |
|
|
|
mapping.setOrder(0); |
|
|
|
mapping.setOrder(0); |
|
|
|
mapping.setContentTypeResolver(mvcContentTypeResolver()); |
|
|
|
mapping.setContentTypeResolver(webReactiveContentTypeResolver()); |
|
|
|
mapping.setCorsConfigurations(getCorsConfigurations()); |
|
|
|
mapping.setCorsConfigurations(getCorsConfigurations()); |
|
|
|
|
|
|
|
|
|
|
|
PathMatchConfigurer configurer = getPathMatchConfigurer(); |
|
|
|
PathMatchConfigurer configurer = getPathMatchConfigurer(); |
|
|
|
@ -151,7 +151,7 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Bean |
|
|
|
@Bean |
|
|
|
public CompositeContentTypeResolver mvcContentTypeResolver() { |
|
|
|
public CompositeContentTypeResolver webReactiveContentTypeResolver() { |
|
|
|
RequestedContentTypeResolverBuilder builder = new RequestedContentTypeResolverBuilder(); |
|
|
|
RequestedContentTypeResolverBuilder builder = new RequestedContentTypeResolverBuilder(); |
|
|
|
builder.mediaTypes(getDefaultMediaTypeMappings()); |
|
|
|
builder.mediaTypes(getDefaultMediaTypeMappings()); |
|
|
|
configureRequestedContentTypeResolver(builder); |
|
|
|
configureRequestedContentTypeResolver(builder); |
|
|
|
@ -222,7 +222,7 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
@Bean |
|
|
|
@Bean |
|
|
|
public HandlerMapping resourceHandlerMapping() { |
|
|
|
public HandlerMapping resourceHandlerMapping() { |
|
|
|
ResourceHandlerRegistry registry = |
|
|
|
ResourceHandlerRegistry registry = |
|
|
|
new ResourceHandlerRegistry(this.applicationContext, mvcContentTypeResolver()); |
|
|
|
new ResourceHandlerRegistry(this.applicationContext, webReactiveContentTypeResolver()); |
|
|
|
addResourceHandlers(registry); |
|
|
|
addResourceHandlers(registry); |
|
|
|
|
|
|
|
|
|
|
|
AbstractHandlerMapping handlerMapping = registry.getHandlerMapping(); |
|
|
|
AbstractHandlerMapping handlerMapping = registry.getHandlerMapping(); |
|
|
|
@ -261,8 +261,8 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
|
|
|
|
|
|
|
|
adapter.setMessageReaders(getMessageReaders()); |
|
|
|
adapter.setMessageReaders(getMessageReaders()); |
|
|
|
adapter.setWebBindingInitializer(getConfigurableWebBindingInitializer()); |
|
|
|
adapter.setWebBindingInitializer(getConfigurableWebBindingInitializer()); |
|
|
|
adapter.setConversionService(mvcConversionService()); |
|
|
|
adapter.setConversionService(webReactiveConversionService()); |
|
|
|
adapter.setValidator(mvcValidator()); |
|
|
|
adapter.setValidator(webReactiveValidator()); |
|
|
|
|
|
|
|
|
|
|
|
return adapter; |
|
|
|
return adapter; |
|
|
|
} |
|
|
|
} |
|
|
|
@ -338,14 +338,14 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
protected ConfigurableWebBindingInitializer getConfigurableWebBindingInitializer() { |
|
|
|
protected ConfigurableWebBindingInitializer getConfigurableWebBindingInitializer() { |
|
|
|
ConfigurableWebBindingInitializer initializer = new ConfigurableWebBindingInitializer(); |
|
|
|
ConfigurableWebBindingInitializer initializer = new ConfigurableWebBindingInitializer(); |
|
|
|
initializer.setConversionService(mvcConversionService()); |
|
|
|
initializer.setConversionService(webReactiveConversionService()); |
|
|
|
initializer.setValidator(mvcValidator()); |
|
|
|
initializer.setValidator(webReactiveValidator()); |
|
|
|
initializer.setMessageCodesResolver(getMessageCodesResolver()); |
|
|
|
initializer.setMessageCodesResolver(getMessageCodesResolver()); |
|
|
|
return initializer; |
|
|
|
return initializer; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Bean |
|
|
|
@Bean |
|
|
|
public FormattingConversionService mvcConversionService() { |
|
|
|
public FormattingConversionService webReactiveConversionService() { |
|
|
|
FormattingConversionService service = new DefaultFormattingConversionService(); |
|
|
|
FormattingConversionService service = new DefaultFormattingConversionService(); |
|
|
|
addFormatters(service); |
|
|
|
addFormatters(service); |
|
|
|
return service; |
|
|
|
return service; |
|
|
|
@ -366,7 +366,7 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
* implementation is not available, a "no-op" {@link Validator} is returned. |
|
|
|
* implementation is not available, a "no-op" {@link Validator} is returned. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
@Bean |
|
|
|
@Bean |
|
|
|
public Validator mvcValidator() { |
|
|
|
public Validator webReactiveValidator() { |
|
|
|
Validator validator = getValidator(); |
|
|
|
Validator validator = getValidator(); |
|
|
|
if (validator == null) { |
|
|
|
if (validator == null) { |
|
|
|
if (ClassUtils.isPresent("javax.validation.Validator", getClass().getClassLoader())) { |
|
|
|
if (ClassUtils.isPresent("javax.validation.Validator", getClass().getClassLoader())) { |
|
|
|
@ -411,12 +411,12 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
|
|
|
|
|
|
|
|
@Bean |
|
|
|
@Bean |
|
|
|
public ResponseEntityResultHandler responseEntityResultHandler() { |
|
|
|
public ResponseEntityResultHandler responseEntityResultHandler() { |
|
|
|
return new ResponseEntityResultHandler(getMessageWriters(), mvcContentTypeResolver()); |
|
|
|
return new ResponseEntityResultHandler(getMessageWriters(), webReactiveContentTypeResolver()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Bean |
|
|
|
@Bean |
|
|
|
public ResponseBodyResultHandler responseBodyResultHandler() { |
|
|
|
public ResponseBodyResultHandler responseBodyResultHandler() { |
|
|
|
return new ResponseBodyResultHandler(getMessageWriters(), mvcContentTypeResolver()); |
|
|
|
return new ResponseBodyResultHandler(getMessageWriters(), webReactiveContentTypeResolver()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
@ -479,7 +479,7 @@ public class WebReactiveConfiguration implements ApplicationContextAware { |
|
|
|
ViewResolverRegistry registry = new ViewResolverRegistry(getApplicationContext()); |
|
|
|
ViewResolverRegistry registry = new ViewResolverRegistry(getApplicationContext()); |
|
|
|
configureViewResolvers(registry); |
|
|
|
configureViewResolvers(registry); |
|
|
|
List<ViewResolver> resolvers = registry.getViewResolvers(); |
|
|
|
List<ViewResolver> resolvers = registry.getViewResolvers(); |
|
|
|
ViewResolutionResultHandler handler = new ViewResolutionResultHandler(resolvers, mvcContentTypeResolver()); |
|
|
|
ViewResolutionResultHandler handler = new ViewResolutionResultHandler(resolvers, webReactiveContentTypeResolver()); |
|
|
|
handler.setDefaultViews(registry.getDefaultViews()); |
|
|
|
handler.setDefaultViews(registry.getDefaultViews()); |
|
|
|
handler.setOrder(registry.getOrder()); |
|
|
|
handler.setOrder(registry.getOrder()); |
|
|
|
return handler; |
|
|
|
return handler; |
|
|
|
|