1

我的问题与以下问题相同;

Jackson POJOPropertyBuilder 在 POJO 中找到多个 setter

但是,当我使用“springfox-swagger2”时,我不使用SwaggerSpringMvcPlugin.

有没有办法解决这个问题?

应用程序.java

/* Makes this Application Run as Spring Boot Application */
@SpringBootApplication
/* Enables Swagger2API for documentation */
@EnableSwagger2
public class Application extends SpringBootServletInitializer { 

public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
    LogService.info(Application.class.getName(), "CustomerAPI Service Started");
}

@Bean
public Docket customerApi() {
    return new Docket(DocumentationType.SWAGGER_2)
            .groupName("Customer Application")
            .apiInfo(apiInfo())
            .select()
            .paths(myAppPaths())
            .build();
}

private ApiInfo apiInfo() {
    return new ApiInfoBuilder()
            .title("Customer API")
            .description("Some Description to Show")
            .termsOfServiceUrl(null)
            .contact("Test Test")
            .license("Apache License Version 2.0")
            .licenseUrl(
                    "https://github.com/springfox/springfox/blob/master/LICENSE")
            .version("2.0")
            .build();
}

@SuppressWarnings("unchecked")
private Predicate<String> myAppPaths() {
    return or(regex("/.*"));
}
4

1 回答 1

5

解决了。正如 Springfox 文档所说,DocketSwaggerSpringMvcPlugin. 所以我们可以像下面那样做,这解决了这个问题。

@Bean
public Docket customerApi() {
return new Docket(DocumentationType.SWAGGER_2)
        .directModelSubstitute(XMLGregorianCalendar.class, String.class)
        .groupName("Customer Application")
        .apiInfo(apiInfo())
        .select()
        .paths(myAppPaths())
        .build();
}

希望这对将来的人有所帮助。

于 2015-07-31T11:36:49.453 回答