Considérons le document json
suivant:accès à la propriété JSON deux fois
{
"a": {
"one": "1",
"two": "2"
},
"b": {
"three": "3",
"four": "4",
}
}
je dois deserizlize au-dessous POJO:
class Root{
@JsonAlias({"a","b"})
Node1 node1;
@JsonAlias({"a","b"})
Node2 node2;
}
class Node1 {
String one;
String three;
}
class Node2 {
String two;
String four;
}
Il semble que les noeuds imbriqués (a
et b
) ne peut être traversé seulement une fois pendant mapper.readValue
. Jackson remplit seulement node1
si j'enlève @JsonAlias({"a","b"})
de node2
et seulement node2
si j'enlève @JsonAlias({"a","b"})
de node1
.
Si je laisse l'annotaion sur les deux, un seul d'entre eux est rempli.
Cette cartographie est-elle prise en charge? Si non, quelle devrait être la solution de contournement?
J'utilise jackson 2.9.1
Merci, @ manos-nikolaidis, mais mon cas d'utilisation est plus complexe que je l'ai décrit. Je me retrouve avec la transformation [jolt] (https://github.com/bazaarvoice/jolt) au milieu puis je lis l'objet transformé avec jackson dans l'objet Root. Merci encore pour votre réponse. –