Czy jesteś pewien, że chcesz mieć swoje podmioty/modele; Customer i Order , aby dziedziczyć z RepresentationModel klasy, które mają właściwości private final List<Link> links; ?
Jeśli spojrzysz na definicja
z RepresentationModel.java mówi wyraźnie, że jest to klasa bazowa dla DTO do zbierania linków. , więc IMHO uważam, że powinien być używany dla DTO, a nie dla podmiotów .
W przeciwnym razie, jeśli chcesz zachować to tak, jak opisałeś, jedynym sposobem uniknięcia błędu jest zignorowanie links pole przed utrwaleniem :
- Zastępowanie gettera
links - Umieszczanie
@Transientna pobieraczulinkswłaściwośćRepresentationModelklasa
Będzie to wyglądać tak:
@Transient
@Override
public Links getLinks() {
return super.getLinks();
}
Jeśli to podejście nie działa, spróbuj utworzyć dedykowane DTO dla swoich jednostek, a każdy z Twoich DTO będzie dziedziczył po RepresentationModel , w ten sposób unikniesz hałaśliwego wyjątku i utrzymasz porządek!