ObjectIdSerializer schrijft eigenschap die is toegewezen met @ObjectId altijd naar een nieuwe instantie van ObjectId. Dit is verkeerd wanneer u deze eigenschap toewijst aan een String.
Om dit gedrag te voorkomen, heb ik een NoObjectIdSerializer geschreven:
public class NoObjectIdSerializer extends JsonSerializer<String> {
@Override
public void serialize(String value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException {
jgen.writeString(value);
}
}
als volgt gebruikt:
@ObjectId
@JsonSerialize(using = NoObjectIdSerializer.class)
protected final String _id;
Er is een openstaand probleem.