J'ai un problème lors de l'analyse de JSON avec Jackson. J'ai un objet POJO, enveloppé par un autre.Analyse JSON avec Jackson Java
Voici mon code:
in main:
ObjectMapper mapper = new ObjectMapper();
List<ItemBean> mpl2 = mapper.readValue(col.toString(),new TypeReference<List<ItemBean>>() {});
my POJO class:
public class ItemBean implements Serializable {
private List<Item> items;
@JsonProperty("Item")
public List<Item> getItems() {
return items;
}
public void setItems(List<Item> items) {
this.items = items;
}
}
public class Item implements Serializable{
public String field1;
public Integer field2;
public static final class Field3 extends GenericJson {
private String subfield1;
private String subfield2;
}
}
Et voici l'exception levée:
org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "item" (Class bean.item), not marked as ignorable
at [Source: [email protected]; line: 4, column: 16] (through reference chain: bean.ItemBean["items"]->bean.Item["item"])
JSON regarde de telle manière:
["{\n
\"items\":
[
\n {
\n \"item\": {
\n \"field1\": \"val1\",
\n \"field2\": \"val2\",
\n \"field3\": [
\n {
\n \"subfield1\": subval
\n \"subfield2\": subval
\n }
\n ]
\n }
\n },
\n \"item\": {
\n \"field1\": \"val1\",
\n \"field2\": \"val2\",
\n \"field3\": [
\n {
\n \"subfield1\": subval
\n \"subfield2\": subval
\n }
\n ]
\n }
\n },
\n \"item\": {
\n \"field1\": \"val1\",
\n \"field2\": \"val2\",
\n \"field3\": [
\n {
\n \"subfield1\": subval
\n \"subfield2\": subval
\n }
\n ]
\n }
\n },
etc...... may I haven't closed brackets correctly, but they are correct :)
}
]
"]
POJO répéter totalement les champs de l'objet JSON.
À quoi ressemble le JSON? – Thomas
@Thomas a ajouté json –