Hibernate envers, audit history returns strange structure

32 Views Asked by At

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?

0

There are 0 best solutions below