org.codehaus.jackson.map.exc.UnrecognizedPropertyException:无法识别的字段“id”(类标准),未标记为可忽略

Posted

技术标签:

【中文标题】org.codehaus.jackson.map.exc.UnrecognizedPropertyException:无法识别的字段“id”(类标准),未标记为可忽略【英文标题】:org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "id" (Class Criteria), not marked as ignorable 【发布时间】:2014-04-18 22:19:54 【问题描述】:

当我尝试将 Json 解析为 Java pojo 对象时出现此异常。对象图有几个对象。

org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "id" (Class Criteria), not marked as ignorable

我想看看,在这种情况下会出现这个异常,对象图中的问题可能出在哪里?

我在我的 android 项目中这样做我没有在这里使用注释我不确定如何将此字段添加为可忽略。

【问题讨论】:

您没有显示 POJO 的代码,也没有显示您尝试反序列化的 JSON;在这些条件下很难分辨。但是错误似乎是POJO定义中不存在对象成员。 Jackson with JSON: Unrecognized field, not marked as ignorable 的可能重复项 【参考方案1】:

你没有显示任何代码,所以...

无论如何,尝试将此注释添加到您反序列化的类中:

@JsonIgnoreProperties(ignoreUnknown=true)

【讨论】:

【参考方案2】:

如果您在 POJO 中定义了字段,但没有定义 getter 和 setter 方法,也会发生这种情况。忽略该字段可能会产生意想不到的后果。

这看起来确实与以下内容重复:Jackson with JSON: Unrecognized field, not marked as ignorable

【讨论】:

以上是关于org.codehaus.jackson.map.exc.UnrecognizedPropertyException:无法识别的字段“id”(类标准),未标记为可忽略的主要内容,如果未能解决你的问题,请参考以下文章

org.codehaus.jackson.map.JsonMappingException:无法从 JSON 字符串实例化类型 [简单类型,类 models.Job] 的值

使用jackson删除JSON元素

Jackson 使用枚举键、POJO 值反序列化为 Map

JackSon

Jackson ObjectMapper类使用解析

Jersey/Jackson:如何捕获 json 映射异常?