我使用 JAXB marshaller 将一些 java 对象存储为 XML 文件。其中一些对象相互引用,所以我不出所料地得到这个错误:
[com.sun.istack.internal.SAXException2: A cycle is detected in the object graph. This will cause infinitely deep XML
包括删除循环并仅使用树结构的解决方案是不可行的 - 我需要两个导航方向。
为了解决这个问题,我宁愿使用 xlink 来引用 xml 对象,而不是级联复制它们。这个解决方案是否相关?使用 JAXB 编组器可以做到这一点吗?如何?