2017-04-24 20 views
0

私はジャクソンオブジェクトマッパーを使用して次のように見えるPOJOをシリアル化しようとしていますが、スタックオーバーフロー例外が発生しました。事前のおかげでジャクソンシリアル化循環参照スタックオーバーフローエラー

public class ServiceCategoryModel { 

    private Integer svcCode; 

    private String svcName; 

    @JsonBackReference 
    private Collection<ServiceCategoryModel> children; 
.... 
} 
+0

を次のようにその作品は、同じBeanオブジェクトを指し示す 'children'での参照の一つでBeanを持っているように見えます。 –

+0

@DarshanMehta - はいDarshanあなたは正しい方向性を持ってくれました –

+0

@TheHeadRush - 上記のリンクはちょうど私が欲しいものです。私は次のように変更して問題を解決しました。どうもありがとう –

答えて

0

私は変更を加えた後

@Entity 
@Table(name="svc_category") 
@JsonIdentityInfo(generator=ObjectIdGenerators.PropertyGenerator.class, property="id") 
public class ServiceCategoryDomain extends BaseDomain{ 

    private static final long serialVersionUID = -5873300401604877065L; 

    @Column(name="svc_cde") 
    @NotNull 
    private Integer svcCode; 

    @Column(name="svc_name") 
    @NotNull 
    private String svcName; 

    @JsonBackReference("parent") 
    @ManyToOne 
    private ServiceCategoryDomain parent; 

    @JsonManagedReference("children") 
    @OneToMany (cascade = {CascadeType.ALL},mappedBy="parent") 
    private Collection<ServiceCategoryDomain> children=new ArrayList<>(); 
    .................. 
}