1

我有类 Foo ,我用它进行了注释,@XmlRootElement并且具有相同类型的 Foo 属性,它是一个列表,如下所示,我也有该列表的 getter/setter。该接口只有 getter 和 setter 声明。

@XmlRootElement(name = "foo")
@XmlAccessorType(XmlAccessType.FIELD)
public class FooImpl implements Foo{

    @XmlElementWrapper(name = "secondaryFooList")
    @XmlElement(name = "secondaryFoo", type = FooImpl.class)
    private List<Foo> secondaryFooList;

}

当我编写单元测试并通过创建新的 Foo 对象并添加到列表来提供 secondaryFooList 时,然后在 Foo 对象中设置它,编组到 xml 失败并出现错误

com.sun.istack.SAXException2:在对象图中检测到循环。这将导致无限深的 XML。

我明白为什么它是循环的,但不知道如何解决它。

谢谢,

4

0 回答 0