Исключение переполнения стека при отображении Hibernate - PullRequest
0 голосов
/ 22 мая 2018
java.lang.StackOverflowError: null
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:708)

Это исключение, которое я получаю при использовании метода поиска.Я использую репозиторий Spring Boot JPA.

@Entity

@ Table (name = "Store") открытый класс StoreEntity {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long store_id;
private String storeDescription;
private String storeName;
private String lattitude;
private String longitude;
private boolean isActive;
private boolean is247;
private Date createdDate;
private Date lastModifiedBy;

@OneToMany(mappedBy = "store", cascade = CascadeType.ALL)
@JsonIgnoreProperties(value ="store", allowSetters=true)
private Set<GroceryItemEntity> groceryItem;

@ Table (name = "Grocery") открытый классGroceryItemEntity {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long grocery_id;

private String name;
private String description;

private double price;
private boolean isActive;
private Date  createdDate;  
private Date  lastModifiedBy;


@ManyToOne(cascade = CascadeType.ALL )
@JoinColumn(name = "store_id")
@JsonIgnoreProperties(value ="groceryItem", allowSetters=true)
private StoreEntity store;

Часть исключений

at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:708)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:155)

1 Ответ

0 голосов
/ 23 мая 2018
@JsonIgnoreProperties(value ="groceryItem", allowSetters=true)

Используется в All Mapping для исправления проблемы бесконечной рекурсии.

На самом деле я изменил структуру своего приложения. Использовал Vo в конечной точке вместо класса сущности

...