Code: Select all
@ManyToOne(fetch = FetchType.LAZY)
private MyJpaEntity o;
Ich habe versucht, mit JSON-B das gleiche Ergebnis zu erzielen, indem ich eine benutzerdefinierte Version verwendet habe PropertyVisibilityStrategy, aber es hat nicht funktioniert, Jakarta JSON versuchte immer noch, den Hibernate-Interceptor zu serialisieren. Es schien jedoch der richtige Weg zu sein, da ich die Eigenschaft ignorieren wollte.
Zuletzt habe ich den Lazy-Initialisierer als Null serialisiert und die JsonbException entfernt , aber die Eigenschaft hibernateLazyInitializer befindet sich immer noch in den JSON-Werten:
Code: Select all
public static final class DumbLazyInitializerSerializer implements JsonbSerializer {
@Override
public void serialize(final LazyInitializer li, final JsonGenerator jg, final SerializationContext sc) {
jg.writeNull();
}
}
try (final Jsonb jsonb = JsonbBuilder.create(new JsonbConfig().withSerializers(new DumbLazyInitializerSerializer()))) {
// do your own stuff
}