diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration.java index 5ef659fc0c..9de37735f2 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration.java @@ -96,7 +96,6 @@ import org.springframework.web.servlet.DispatcherServlet; import org.springframework.web.servlet.FlashMapManager; import org.springframework.web.servlet.HandlerExceptionResolver; import org.springframework.web.servlet.LocaleResolver; -import org.springframework.web.servlet.ThemeResolver; import org.springframework.web.servlet.View; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.AsyncSupportConfigurer; @@ -458,7 +457,7 @@ public class WebMvcAutoConfiguration { @ConditionalOnMissingBean(name = DispatcherServlet.THEME_RESOLVER_BEAN_NAME) @Deprecated @SuppressWarnings("deprecation") - public ThemeResolver themeResolver() { + public org.springframework.web.servlet.ThemeResolver themeResolver() { return super.themeResolver(); } diff --git a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfigurationTests.java index 855423d97a..e1098b7f9c 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfigurationTests.java @@ -94,7 +94,6 @@ import org.springframework.web.servlet.HandlerAdapter; import org.springframework.web.servlet.HandlerExceptionResolver; import org.springframework.web.servlet.HandlerMapping; import org.springframework.web.servlet.LocaleResolver; -import org.springframework.web.servlet.ThemeResolver; import org.springframework.web.servlet.View; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.AsyncSupportConfigurer; @@ -126,7 +125,6 @@ import org.springframework.web.servlet.resource.VersionResourceResolver; import org.springframework.web.servlet.resource.VersionStrategy; import org.springframework.web.servlet.support.AbstractFlashMapManager; import org.springframework.web.servlet.support.SessionFlashMapManager; -import org.springframework.web.servlet.theme.FixedThemeResolver; import org.springframework.web.servlet.view.AbstractView; import org.springframework.web.servlet.view.ContentNegotiatingViewResolver; import org.springframework.web.util.UrlPathHelper; @@ -373,20 +371,25 @@ class WebMvcAutoConfigurationTests { } @Test + @Deprecated + @SuppressWarnings("deprecation") void customThemeResolverWithMatchingNameReplacesDefaultThemeResolver() { this.contextRunner.withBean("themeResolver", CustomThemeResolver.class, CustomThemeResolver::new) .run((context) -> { - assertThat(context).hasSingleBean(ThemeResolver.class); + assertThat(context).hasSingleBean(org.springframework.web.servlet.ThemeResolver.class); assertThat(context.getBean("themeResolver")).isInstanceOf(CustomThemeResolver.class); }); } @Test + @Deprecated + @SuppressWarnings("deprecation") void customThemeResolverWithDifferentNameDoesNotReplaceDefaultThemeResolver() { this.contextRunner.withBean("customThemeResolver", CustomThemeResolver.class, CustomThemeResolver::new) .run((context) -> { assertThat(context.getBean("customThemeResolver")).isInstanceOf(CustomThemeResolver.class); - assertThat(context.getBean("themeResolver")).isInstanceOf(FixedThemeResolver.class); + assertThat(context.getBean("themeResolver")) + .isInstanceOf(org.springframework.web.servlet.theme.FixedThemeResolver.class); }); } @@ -1482,7 +1485,8 @@ class WebMvcAutoConfigurationTests { } - static class CustomThemeResolver implements ThemeResolver { + @Deprecated + static class CustomThemeResolver implements org.springframework.web.servlet.ThemeResolver { @Override public String resolveThemeName(HttpServletRequest request) {