Jackson nicht zu erkennen @JsonCreator annotation

Ich bin derzeit mit Jackson 1.4.2 und dem Versuch der Deserialisierung von code Werte (eindeutige Bezeichner für den Typ-Informationen), die übergeben werden von unseren UI-zurück zu den Java-Controller (Servlets).

Gibt es mehrere Arten (z.B. ABCType, XYZType usw.) alle erstrecken sich von einem AbstractType, aber jeden konkreten Typ hat eine statische factory Methode akzeptiert als einzigen parameter eine eindeutige id, und das type-Objekt zurückgibt (name, verbunden Arten, Beschreibung, gültige Abkürzungen, etc.) vertreten durch die id. Die statische Methode innerhalb der einzelnen konkreten Typ (z.B. XYZType) versehen mit @JsonCreator:

@JsonCreator
public static XYZType getInstance(String code) {
    .....
}

Das problem, dass ich sehe ist jedoch eine Ausnahme, die ausgelöst durch Jackson-mapper versucht zu Deserialisieren der json zu dieser Art:

Verursacht durch: org.codehaus.jackson.Karte.JsonMappingException: Kein default-Konstruktor gefunden, geben Sie [einfache Art, Klasse com.Unternehmen.Typ.XYZtype]: kann nicht instanziiert, die aus Json-Objekt.

Was bin ich hier der @JsonCreator Kommentar zu statische factory-Methoden (oder hat es zu tun mit Jackson 1.4.2 kämpfen mit den konkreten Typen der sich von einem AbstractType?)?

InformationsquelleAutor user376327 | 2010-06-25
Schreibe einen Kommentar