Hadi Eskandari Hadi Eskandari - 1 year ago 215
JSON Question

Ignoring new fields on JSON objects using Jackson

I'm using Jackson JSON library to convert some JSON objects to POJO classes on an android application. The problem is, the JSON objects might change and have new fields added while the application is published, but currently it will break even when a simple String field is added, which can safely be ignored.

Is there any way to tell Jackson to ignore newly added fields? (e.g. non-existing on the POJO objects)? A global ignore would be great.

Answer Source

Jackson provides an annotation that can be used on class level (JsonIgnoreProperties).

Add the following to the top of your class (not to individual methods):

@JsonIgnoreProperties(ignoreUnknown = true)
public class Foo {

Depending on the jackson version you are using you would have to use a different import in the current version it is:

import org.codehaus.jackson.annotate.JsonIgnoreProperties;

in older versions it has been:

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download