Я использую веб-контроллер 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
Java Spring HttpMessageNotWritableException/JsonMappingException с Hibernate FetchType.LAZY в процессе сериализации Джек ⇐ JAVA
Программисты JAVA общаются здесь
1732079075
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);
...
Подробнее здесь: [url]https://stackoverflow.com/questions/35086902/java-spring-httpmessagenotwritableexception-jsonmappingexception-with-hibernate[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия