Ich habe einen benutzerdefinierten DeserializerWie füge ich einen benutzerdefinierten Jackson Deserializer einer Liste zu einem Modul hinzu?
class MyListDeserialiser extends JsonDeserializer<List<MyObject>>{
@Override
public List<MyObject> deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
....
return myListOfObjects; }
}
dann muß ich diese
ich zu einer Jackson-Mapper-Modul
versuchtepublic class MyModule extends SimpleModule {
public MyModule() {
super(new Version(1, 0, 0, "", null, null));
addDeserializer(TypeFactory.defaultInstance().constructCollectionType(List.class, MyObject.class).getClass(),
new MyListDeserialiser());
}
hinzufügen, aber das hat nicht funktioniert.
Ist TypeFactory der richtige Weg oder ist das Problem mit der Deserialiser-Definition?
Ich möchte keine Anmerkungen verwenden, also ist dies die einzige andere Methode, die ich kenne. Ich möchte die Funktionalität nicht direkt zum Objekt-Mapper hinzufügen, da ich viele benutzerdefinierte Deserialisierungen haben werde und ich möchte den ganzen Code in einem Modul versteckt halten.
Vielen Dank im Voraus
"Das hat nicht funktioniert" erklärt nicht wirklich, was passiert ist. – Johanneke