Swagger UI显示重复的模型变量

时间:2019-06-19 20:33:29

标签: java spring-boot kotlin swagger swagger-ui

Swagger-ui在编辑和无编辑模式下显示重复的模型变量。发生在ui上显示的每个单个模型都有重复的model变量。不知道这是否是由于使用Kotlin,但确实令人沮丧和困惑。重复的变量似乎在每个变量之后都有$ timefundcharity。

每个模型也是以@Document注释的MongoDb实体

欢迎任何帮助

{
  "charityId$charity": 0,
  "createdAt$charity": "2019-06-19T20:16:33.735Z",
  "id": 0,
  "id$charity": 0,
  "userId": 0,
  "userId$charity": 0,
  "charityId": 0,
  "createdAt": "2019-06-19T20:16:33.735Z"
}

Image of swagger-ui Image of swagger-ui model view

我已经在互联网上四处寻找解决问题的方法,但似乎没有人真正遇到过这个问题,我认为我最好在此进行推广。

起初我以为这可能是摇摇欲坠的配置,但似乎也不是,因为我已经将该配置与其他来源进行了比较

@Document(collection = "CharityFollowers")
@ApiModel
data class CharityFollower
(
        internal var userId: BigInteger,
        internal var charityId: BigInteger,
        internal var createdAt: LocalDateTime = LocalDateTime.now()
){
    @Id internal lateinit var id : BigInteger
}

swagger配置

@Bean
fun productApi(): Docket {
        return Docket(DocumentationType.SWAGGER_12)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.martin.charity.controllers"))
                .build()
                .securityContexts(arrayListOf(securityContext()))
                .securitySchemes(arrayListOf(this.securitySchema(), this.apiKey(), this.apiCookieKey()))
    }

我希望结果不会有重复的模型变量

1 个答案:

答案 0 :(得分:0)

经过多次尝试和错误后,我设法弄清了这一点。发生这种情况的原因与修饰符有关,最好删除所有修饰符,例如内部修饰符。删除修饰符后,问题得以解决