我有一个包含循环的对象图。我如何让JAXB处理这个问题?我尝试在子类中使用@XmlTransient
注释,但JAXB编组仍然检测到该循环。JAXB映射循环引用到XML
@Entity
@XmlRootElement
public class Contact {
@Id
private Long contactId;
@OneToMany(mappedBy = "contact")
private List<ContactAddress> addresses;
...
}
@Entity
@XmlRootElement
public class ContactAddress {
@Id
private Long contactAddressId;
@ManyToOne
@JoinColumn(name = "contact_id")
private Contact contact;
private String address;
...
}
也许这是一个JAX-RS问题。我仍然得到异常说周期被检测到 - javax.ws.rs.WebApplicationException:javax.xml.bind.MarshalException - 与链接的异常: [com.sun.istack.SAXException2:在对象图中检测到一个循环。 – 2010-07-06 21:49:15
您将需要添加指定EclipseLink MOXy运行时的jaxb.properties文件。我已将说明添加到上面的答案中。 – 2010-07-07 14:24:49
工程很棒。谢谢。 – 2010-07-07 18:26:49