Код: Выделить всё
@ManyToOne(fetch = FetchType.LAZY)
private MyJpaEntity o;
Я пытался получить тот же результат с JSON-B, используя собственный PropertyVisibilityStrategy, но это не сработало, Jakarta JSON все еще пыталась сериализовать перехватчик Hibernate. Однако мне показалось, что это правильный путь, поскольку я хотел игнорировать это свойство.
Наконец, я сериализовал ленивый инициализатор как null, я избавился от JsonbException , но свойство hibernateLazyInitializer все еще находится в значениях JSON:
Код: Выделить всё
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
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... atelazyini