首页 文章

在swagger中排除groovy模型类的元类属性

提问于
浏览
2

我们如何将“groovy”类的模型中的元类属性排除为响应?我有一个Jax-Rs资源,它返回一个带有swagger @ApiModel注释的groovy对象 . 我看到swagger ui中有太多groovy特定属性 . 如何将其从序列化中排除?

@EqualsAndHashCode
@Document(collection = 'MongoCollection')
@CompileStatic
@ToString
@XmlRootElement
@XmlAccessorType(value = XmlAccessType.FIELD)
@ApiModel(value = "Represents a document from mongo collection")
class Foo {
..
..

}

它似乎使用 Jackson 进行pogo-json序列化?如何注释我的groovy类以排除元类属性进入json序列化字符串?我尝试使用JsonIgnoreProperties注释,但它没有帮助 .

@JsonIgnoreProperties(ignoreUnknown = true, value = ["MetaClass","MetaMethod"])

3 回答

  • 0

    如果使用springfox,请参阅springfox issues 752,找到解决此问题的方法:

    docket.ignoredParameterTypes(groovy.lang.MetaClass.class)
    
  • 3

    根据https://github.com/wordnik/swagger-core/issues/519,这可能是一个招摇的错误 . 我从groovy切换到java类,模型对象继续进行 . 我有空的时候会为这个问题创建一个测试 .

  • 0

    将Swagger升级到版本> = 1.3.5应解决此问题 .

相关问题