我很难让@JsonIgnore使用Cloud Endpoints。
如果我从com.google.appengine.repackaged.org.codehaus.jackson.annotate.JsonIgnore将@JsonIgnore添加到我的getter中,则会成功禁止该属性。 (但后来我得到了令人讨厌的“警告错误”,我的应用可能会破坏)
但是,当我从jackson-core-asl-1.9.11.jar将@JsonIgnore切换到org.codehaus.jackson.annotate时,Generate Cloud Endpoint Client Library会忽略我的@JsonIgnore注释并使用属性I创建模型类我试图压制。
有什么想法吗?
答案 0 :(得分:3)
不要使用@JsonIgnore,而是使用@ApiResourceProperty
:
@ApiResourceProperty提供了更多的资源控制 属性在API中公开。您可以在属性获取器上使用它 或者setter从API资源中省略该属性。你也可以使用 它在场上本身,如果该场是私人的,则在场上暴露它 API。您还可以使用此批注更改属性的名称 在API资源中。
@ApiResourceProperty(ignored = AnnotationBoolean.TRUE)
public String getBin() {
return bin;
}