Mam wykres obiektowy, który zawiera cykl. Jak mogę JAXB poradzić sobie z tym? Próbowałem użyć adnotacji @XmlTransient
w klasie potomnej, ale koordynator JAXB nadal wykrywa cykl.Odwzorowanie cykliczne JAXB na 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;
...
}
Być może jest to problem JAX-RS. Nadal mam wyjątek mówiąc, że wykryto cykl - javax.ws.rs.WebApplicationException: javax.xml.bind.MarshalException - z połączonym wyjątkiem: [com.sun.istack.SAXException2: Wykryto cykl na wykresie obiektu . –
Należy dodać plik jaxb.properties określający środowisko wykonawcze MOXy środowiska EclipseLink. Dodałem instrukcje do powyższej odpowiedzi. –
Działa świetnie. Dzięki. –