次のような JSON オブジェクトがあります。
{"name":"John", "grade":"A"}
また
{"name":"Mike", "grade":"B"}
また
{"name":"Simon", "grade":"C"}
等
上記の JSON を次のようにマッピングしようとしています。
@JsonIgnoreProperties(ignoreUnknown = true)
public class Employee{
@JsonIgnoreProperties(ignoreUnknown = true)
public enum Grade{ A, B, C }
Grade grade;
String name;
public Grade getGrade() {
return grade;
}
public void setGrade(Grade grade) {
this.grade = grade;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
上記のマッピングは正常に機能しますが、将来的には、既存のマッピングを壊して次の例外をスローする D、E などの「Grade」タイプが増える予定です。
05-08 09:56:28.130: W/System.err(21309): org.codehaus.jackson.map.JsonMappingException: Can not construct instance of Employee from String value 'D': value not one of declared Enum instance names
列挙型で未知のフィールドを無視する方法はありますか?
ありがとう