Интеграция Springfox Swagger2 в устаревшее приложение без загрузки не работает - PullRequest
0 голосов
/ 19 февраля 2019

Мне нужно быстро интегрировать swagger2 в устаревший весенний проект MVC без весенней загрузки.Поскольку существующая конфигурация Spring основана на XML, я сначала попытался настроить ее следующим образом:

  <!-- Enables swgger ui-->
  <mvc:resources mapping="swagger-ui.html" location="classpath:/META-INF/resources/"/>
  <mvc:resources mapping="/webjars/**" location="classpath:/META-INF/resources/webjars/"/>

  <!-- Include a swagger configuration-->
  <bean name="applicationSwaggerConfig" class="com.api.SwaggerConfig"/>

SwaggerConfig:

@Configuration
@EnableSwagger2
public class SwaggerConfig {

@Bean
public Docket api() {
    return new Docket(DocumentationType.SWAGGER_2)
            .apiInfo(apiInfo())
            .select()
            .apis(RequestHandlerSelectors.any())
            .paths(PathSelectors.ant("/rest/.*"))
            .build();
}

private ApiInfo apiInfo() {
    return new ApiInfoBuilder()
            .title("API")
            .description("API")
            .build();
  }

}

ResourceConfig:

@Configuration
@EnableWebMvc
  public class SwaggerResourceConfig extends WebMvcConfigurerAdapter {

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
    registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
    registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
 }
}

Я такжеУ меня есть сканирование контроллера (где у меня> 30 RequestMappings):

<context:component-scan base-package="com.api.controller" />  

Когда я его запускаю, путей нет ни в ответе v2 / api-docs, ни в пользовательском интерфейсе swagger.Я также пытался сделать это только с помощью конфигурации Java - тот же результат.Googling не дает мне никаких указаний о том, как интегрировать Swagger в устаревший, не пружинный загрузочный проект, кроме приведенного выше кода.Есть идеи, что я делаю не так?

...