我们如何在模型中排除“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"])**
4条答案
按热度按时间polkgigr1#
如果使用springfox,请参见springfox issues 752,找到了解决此问题的方法:
代码示例如下:
unhi4e5o2#
这可能是swagger中的一个bug,就像https://github.com/wordnik/swagger-core/issues/519一样。我从groovy切换到了java类来处理模型对象。当我有时间的时候,我会为这个问题创建一个测试。
6vl6ewon3#
https://springdoc.org/#groovy-support
在springdoc-openapi-ui依赖项中包含此依赖项将解决较新版本中的问题。
t2a7ltrp4#
将Swagger升级到版本〉= 1.3.5应该可以解决这个问题。