Vypadá to, že Jackson byl upraven tak, aby serializoval pole ID řetězce zvláštním způsobem. To je pravděpodobně součástí integrace s org.bson
knihovna.
Problém je v tom, že váš deserializátor je parametrizován pomocí ObjectId
zadejte místo String
nebo prostý Object
. Zkuste to změnit následovně a také odstraňte @ObjectId
anotace z deklarace pole. Zde je příklad:
public class ObjectIdSerializer extends JsonSerializer<Object> {
@Override
public void serialize(Object value, JsonGenerator jsonGen,SerializerProvider provider) throws IOException {
jsonGen.writeString(value.toString());
}
}
Můžete také zvážit přijetí třídy poskytovatelů Jackson-Jongo opravit serializaci ID objektu pro všechny třídy.