Конечные точки REST данных Sping, не генерируемые в интерфейсе Swagger - PullRequest
0 голосов
/ 07 ноября 2019

Я реализовал контроллер, используя @BasePathAwareController, который также использует преимущества Spring Data REST (для поиска, чтобы выставить сортировку / размер и т. Д.) Наряду с некоторыми пользовательскими конечными точками (для обновлений и т. Д.). Приложение работает должным образом, а конечные точки, которые генерирует Spring Data REST, работают должным образом, и я вижу, что в ответах появляются собственные ссылки, однако я не вижу этих конечных точек в Swagger UI. Я просто вижу свои пользовательские конечные точки, определенные в моем контроллере.

Согласно этому сообщению Мне нужно использовать Swagger 3.0.0-SNAPSHOT с @EnableSwagger2WebMvc

Вот мои конфигурации:

Мой app.yml:

spring:
    data:
      rest:
        basePath: /api/v1

Мой POM файл:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.8.RELEASE</version>
    <relativePath/>
</parent>
<properties>        
        <springfox.swagger.version>3.0.0-SNAPSHOT</springfox.swagger.version>       
</properties>

<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>${springfox.swagger.version}</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>${springfox.swagger.version}</version>         
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-data-rest</artifactId>
    <version>${springfox.swagger.version}</version>
</dependency>

Файл конфигурации Swagger:

@Configuration
@Import(SpringDataRestConfiguration.class)
@EnableSwagger2WebMvc
public class SwaggerConfig {

    @Bean
    public Docket api(ServletContext servletContext) {
        return new Docket(DocumentationType.SWAGGER_2)          
        .select()
        .apis(RequestHandlerSelectors.basePackage("my.package.name"))
        .paths(PathSelectors.any())
        .build().apiInfo(apiEndPointsInfo());
    }

    private ApiInfo apiEndPointsInfo() {
        return new ApiInfoBuilder().title("My App REST API's")
            .description("My App REST API's")            
            .version("1.0").build();
    }

}

Мой репозиторий:

  @RepositoryRestResource(exported=true, collectionResourceRel="group", path="group")
public interface GroupRepository extends JpaRepository<Group, Long>, JpaSpecificationExecutor<Group> {


}

Почему можноя вижу конечные точки по умолчанию, которые создает Spring Data REST?

...