代码之家  ›  专栏  ›  技术社区  ›  Arthur

弹簧引导执行器需要@enableWebMVC,但这会关闭其他功能

  •  1
  • Arthur  · 技术社区  · 6 年前

    我在尝试使用SpringBoot1.5.11的静态资源服务特性将执行器集成到一个项目时感到困惑:

    1. 弹簧保护罩执行器不工作没有 @EnableWebMvc ,返回HTTP 406,因为未安装正确的HTTP媒体转换器。

    2. 但如果我加上 @启用WebMVC ,它关闭了从 static 文件夹和其他弹簧引导功能。

    有没有一种方法可以在不丢失引导功能的情况下初始化执行器?

    1 回复  |  直到 6 年前
        1
  •  1
  •   Arthur    6 年前

    找到一个 bug 在SpringBoot2.0中,它似乎也出现在Boot1.5中。解决方法:设置 favorPathExtension false 关闭中的Buggy代码 ServletPathExtensionContentNegotiationStrategy 执行器端点开始工作。

    @Configuration
    public class WebConfig implements WebMvcConfigurer {
        @Override
        public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
            configurer.favorPathExtension(false);
        }
    }