Java Spring HttpMessageNotWritableException/JsonMappingException с Hibernate FetchType.LAZY в процессе сериализации ДжекJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Java Spring HttpMessageNotWritableException/JsonMappingException с Hibernate FetchType.LAZY в процессе сериализации Джек

Сообщение Anonymous »

Я использую веб-контроллер Java Spring и jackson для анализа ответов. Также у меня есть четыре объекта Java Hibernate: User Filter Make Model с двунаправленным отношением в Make -> Model(s): < /p>


GeUser.getFilters().get(0).getModel().getMake().getModels().get(0).getMake ()...


Я попробовал добавить @JsonIgnoreProperties(value = "models") в класс Model, но все равно получил исключение:

WARNING: Failed to write HTTP message: org.springframework.http.converter.HttpMessageNotWritableException: Could not write content: No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: com.gecars.objects.GeUser["filters"]->org.hibernate.collection.internal.PersistentSet[0]->com.gecars.objects.Filter["model"]->com.gecars.objects.models.Model_$$_jvste81_2["handler"]); nested exception is com.fasterxml.jackson.databind.JsonMappingException: No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: com.gecars.objects.GeUser["filters"]->org.hibernate.collection.internal.PersistentSet[0]->com.gecars.objects.Filter["model"]->com.gecars.objects.models.Model_$$_jvste81_2["handler"])


Объекты GeUser:

@Entity
@Table(name="users")
public class GeUser {
...
@OneToMany(fetch = FetchType.LAZY)
private Set filters = new HashSet(0);
..


Фильтр:

@Entity
@Table(name="filters")
public class Filter {
...
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "fk_model")
private Model model;
..


Модель:

@Entity
@Table(name="models")
public class Model {
...
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "fk_make")
@JsonIgnoreProperties(value = "models") //Not working (if I correct understand it should tell jackson to skip models from Make class )
private Make make;
...


Изготовить:

@Entity
@Table(name="auto")
public class Make {
....
@OneToMany(fetch = FetchType.LAZY, mappedBy = "make")
@JsonIgnoreProperties(value = "make")
private List models = new ArrayList(0);
...


Подробнее здесь: https://stackoverflow.com/questions/350 ... -hibernate
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Двукеденный, бесконечно прокрутка, переменная Lazy Lazy Lazy Lazy Lazy Lazy - это возможно?
    Anonymous » » в форуме IOS
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Двукеденный, бесконечно прокрутка, переменная Lazy Lazy Lazy Lazy Lazy Lazy - это возможно?
    Anonymous » » в форуме IOS
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Запросы Hibernate n + 1 после объяснения настройки fetchtype.lazy
    Anonymous » » в форуме JAVA
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Запросы Hibernate n + 1 после объяснения настройки fetchtype.lazy
    Anonymous » » в форуме JAVA
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Запросы Hibernate n + 1 после объяснения настройки fetchtype.lazy
    Anonymous » » в форуме JAVA
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»