在过去的几个月里,我们在一个项目中使用 Jersey(Java REST 库)并且喜欢它。但是本周遇到了 JAXB 的问题。
我所拥有的是一个有 2 个孩子的元素,他们每个人都有孩子,他们的一些孩子互相引用。
让我展示一些代码。
Root root = new Root();
Parent parent1 = new Parent();
Parent parent2 = new Parent();
root.add(parent1);
root.add(parent2);
Child child1 = new Child();
Child child2 = new Child();
Child child3 = new Child();
parent1.add(child1);
parent1.add(child2);
parent2.add(child2);
parent2.add(child3);
所以我们有1个根,2个父母和3个孩子。
如果我在 JAXB 路径上上下发送它,我似乎会找回 4 个孩子。
每个家长都有自己的 child2 副本。
有没有办法让 JAXB 序列化关系并显示 parent1 和 parent2 都指向同一个对象?
我们最近才发现这个问题,当时正在传输更复杂的元素。
如果没有办法让 JAXB 做到这一点(这就是我目前所相信的),有没有人有任何建议我可以在泽西岛做一些魔术来恢复这种关系?