У меня такие двунаправленные отношения ...
Person.java
public class Person{
@JsonIgnore
@OneToMany(targetEntity=PersonOrganization.class, cascade=CascadeType.ALL,
fetch=FetchType.EAGER, mappedBy="person")
private Set<PeopleOrg> organization;
.....
}
PersonOrganization.java
public class PersonOrganization{
@JsonIgnore
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="PERSONID", nullable=false)
private Person person;
}
Даже с аннотацией @JsonIgnore
я получаю бесконечную ошибку рекурсии при попытке получить записи Person. Я попробовал новые аннотации в версии 1.6. @JsonBackReference
и @JsonManagedReference
. Даже тогда я получаю бесконечную рекурсию ..
С @JsonBackReference("person-organization")
на Person
и @JsonManagedReference("person-organization")
на PersonOrganization
org.codehaus.jackson.map.JsonMappingException: Infinite recursion (StackOverflowError) (through reference chain: com.entity.Person["organization"]->org.hibernate.collection.PersistentSet[0]->com.entity.PersonOrganization["person"]->com.entity.Person["organization"]->org.hibernate.collection.PersistentSet[0]...
Даже если я чередую аннотации, я все еще получаю это исключение. Пожалуйста, дайте мне знать, если что-то не так с отображениями или с тем, как я использую аннотации JSON. Спасибо