Ich benutze Eclipselink 2.3.2 als meine JAXB (JSR-222) Anbieter. Ich habe eine generische Liste erstellt, die aus einer Liste von Elementen und einer Reihe von Seitenumbruch-Links besteht.Problem mit Eclipselink und @XmlRef
import java.util.List;
import javax.xml.bind.annotation.*;
@XmlRootElement(name = "listdata")
public class ListEntity<T> {
@XmlElementRef
public List<T> data;
@XmlElementRef
public PaginationLinks links;
public ListEntity(List<T> data) {
this.data = data;
}
public ListEntity() {
}
}
Meine eigentliche Entity
@XmlRootElement(name="authorization")
public class AuthorizationDTO {
@XmlElement
public String referenceNumber;
}
So, nach Erstellung der Liste, wenn ich zu marshall versuche es, erhalte ich die folgende Fehlermeldung. Funktioniert mit @XmlElement für die Datenliste, aber offensichtlich nicht verwendet werden kann, wie es die Darstellung Objekt erzeugt
Caused by: Exception [EclipseLink-50006] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.JAXBException
Exception Description: Invalid XmlElementRef on property data on class com.ofss.fc.botg.infra.model.ListEntity. Referenced Element not declared.