Pergunta

I have the following json file:


{
  "segments": {        
            "externalId": 123, 
            "name": "Tomas Zulberti", 
            "shouldInform": true, 
            "id": 4
   }
}

But the java model is as follows:


public class Segment {

    private String id;
    private String name;
    private boolean shouldInform;

    // getter and setters here...
}

When Jackson is parsing it raises an exception becuase there is no getter or setter for the field "externalId". It there a decorator that can be used to ignore a json field?

Foi útil?

Solução

You can use annotation @JsonIgnoreProperties; if it's just one value you want to skip, something like:

@JsonIgnoreProperties({"externalId"})

or to ignore anything that can't be used:

@JsonIgnoreProperties(ignoreUnknown=true)

There are other ways to do it too, for rest check out FasterXML Jackson wiki.

Outras dicas

Also we can use mapper.enable(DeserializationFeature.FAIL_ON_IGNORED_PROPERTIES); instead @JsonIgnoreProperties(ignoreUnknown=true)

but for particular property we can use

@JsonIgnoreProperties({"externalId"})
public class Segment {

    private String id;
    private String name;
    private boolean shouldInform;

    // getter and setters here...
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top