如何忽略我对fastxml jackson不具备的对象

时间:2014-12-09 16:48:04

标签: java android json jackson fasterxml

我对java和android编程非常陌生,在我必须维护的应用程序中,我们使用fastxml jackson从服务器反序列化内容。

我们处理从服务器获取的信息(对象)的必须,但是我们不想处理它们的某些类。

问题是每次来自RestTemplate的函数getForObject都会收到我们在代码中没有的这些对象中的一个,因为我们不关心,库会抛出这样的异常:< / p>

org.springframework.http.converter.HttpMessageNotReadableException: Could not read JSON: Invalid type id 'com.xxxx.sam.common.sync.SongImageMappingSyncInfo' (for id type 'Id.class'): no such class found (through reference chain: [Ljava.lang.Object[][1]); nested exception is com.fasterxml.jackson.databind.JsonMappingException: 

我试图用属性&#34; FAIL_ON_UNKNOWN_PROPERTIES&#34;忽略这一点。为假,但它不会改变任何东西,因为它不是我想忽略的属性,而是一个完全对象......

有人知道跳过这些例外的方法吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

我总是在我想要反序列化的对象上面有这个注释:

@JsonIgnoreProperties(ignoreUnknown = true)
public class ClassToBeDeserialized() {
}

答案 1 :(得分:0)

似乎没有办法通过设计来做到这一点。收到一个json对象并忽略它有点奇怪。可以忽略属性,但为此,您的对象必须存在。

所以我们所做的就是在代码中创建对象,并在反序列化后忽略它。

不漂亮,但有效。

相关问题