Comment Utiliser Jackson @JsonIdentityInfo pour la Désérialisation des Graphes orientés?

Je veux utiliser Jackson 2.3.3 pour la Sérialisation/désérialisation des graphes orientés. La structure que j'ai trouvé est à peu près le suivant:

public Class Graph {
    private final Set<Node> nodes;
    public Graph(Set<Node> nodes) { ... }
    public Set<Node> getNodes() { ... }
}

@JsonIdentityInfo(
        generator = ObjectIdGenerators.PropertyGenerator.class,
        property = "name")
public Class Node {
    private final String name;
    private final Set<Edge> edges;
    public Node(String name, Set<Edge> edges) { ... }
    public String getName() { ... }
    public Set<Edge> getEdges() { ... }
}

@JsonIdentityInfo(
        generator = ObjectIdGenerators.PropertyGenerator.class,
        property = "name")
public Class Edge {
    private final String name;
    private final Node successor;
    public Edge(String name, Node successor) { ... }
    public String getName() { ... }
    public Node getSuccessor() { ... }
}

Et j'attends d'avoir cette JSON-Structure:

{
  "graph": [{
    "name": "A",
    "edges": [{
      "name": "0",
      "successor": "B"
    }, {
      "name": "1",
      "successor": "A"
    }]
  }, {
    "name": "B",
    "edges": [{
      "name": "0",
      "successor": "A"
    }, {
      "name": "1",
      "successor": "B"
    }]
  }]
}

Mais j'obtiens l'erreur suivante lors de la désérialisation (même avec l'annotation @JsonProperty("name") à la Getters):

com.fasterxml.jackson.databind.JsonMappingException: Invalid Object Id definition for some.package.graph.Node: can not find property with name 'name'

J'ai trouvé quelques solutions pour Jackson 1.6 avec des Annotations de Référence, mais je tiens à utiliser le nouveau Jackson 2.x Annotation, comme il a été annoncé tellement dans l'API mise à Jour à partir de 1.9 à 2.0 de Jackson.

Quel point suis-je manque ici? Merci pour les réponses constructives à l'avance.

MODIFIER

(Supprimé ma réponse d'ici à la section Réponse)

OriginalL'auteur MalteJ | 2014-07-22