I have 2 classes related with relation as below:
@Audited(withModifiedFlag = true)
@Builder
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Entity
@Table(name = "number_series")
public class NumberSeries extends AuditEntityModificationTypeEntity implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private Boolean active;
@AuditMappedBy(mappedBy = "numberSeries")
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, fetch = FetchType.LAZY)
@JoinColumn(name = "id_number_series", referencedColumnName = "id")
private List<ProductNumberSeries> productNumberSeries;
}
and class:
@Audited(withModifiedFlag = true)
@Getter
@Setter
@Entity
@Table(name = "product_number_series")
public class ProductNumberSeries extends AuditEntityModificationTypeEntity implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private Boolean active;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "id_number_series", referencedColumnName = "id")
private NumberSeries numberSeries;
}
and I want to read audited history of ProductNumberSeries with query:
AuditQuery query = auditReader.createQuery()
.forRevisionsOfEntityWithChanges(ProductNumberSeries.class, true);
but data returned in index [0] (entity record) writed to json returns me very big structure, where I have:
"numberSeries": {
"productNumberSeries": [
{
"numberSeries": {
"productNumberSeries": [
{
"numberSeries": {
...
}
}
]
}
}
]
}
}
The depth is around 370.
Why it returns me in so big json with circular reference to the same objects?