我的问题与以下问题相同;
Jackson POJOPropertyBuilder finds multiple setters in POJO
但是,因为我使用“ springfox-swagger2”,所以我不使用SwaggerSpringMvcPlugin
。
有办法解决这个问题吗?
应用程序
/* 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("/.*"));
}
最佳答案
解决了。如Springfox文档所说,Docket
与SwaggerSpringMvcPlugin
非常相似。因此,我们可以像下面这样来解决此问题。
@Bean
public Docket customerApi() {
return new Docket(DocumentationType.SWAGGER_2)
.directModelSubstitute(XMLGregorianCalendar.class, String.class)
.groupName("Customer Application")
.apiInfo(apiInfo())
.select()
.paths(myAppPaths())
.build();
}
希望这对以后的人有所帮助。