Benannte Abfrage für eine zugeordnete Superklasse
Ich versuche, eine NamedQuery für eine zugeordnete Superklasse zu deklarieren, erhalte jedoch den folgenden Fehler:
org.hibernate.hql.ast.QuerySyntaxException: VoipCall ist nicht zugeordnet [Wählen Sie v aus VoipCall v, wobei v.audioFile =: audioFile]
Wir verwenden den Ruhezustand, bevorzugen jedoch die JPA-Standardnotation.
Hier ist der Code:
@MappedSuperclass
@NamedQueries(value = {
@NamedQuery(name = "getVoipCallsForAudio", query = "select v from VoipCall v where v.audioFile = :audioFile")
})
public abstract class VoipCall implements Serializable {
Es scheint, dass ich meine mappedSuperClass nicht in der Abfrage verwenden kann, aber ich verstehe nicht, warum, wenn ich in der JPA-API Folgendes gefunden habe:
Die NamedQuery-Annotation kann auf eine Entität oder eine zugeordnete Superklasse angewendet werden.
Wo irre ich mich
Vielen Dank!!
LÖSUNG: Die Lösung für mich war eine Problemumgehung: Ich habe die benannte Abfrage in die Unterklassen verschoben und die where-Klausel entsprechend geändert. Dies gibt mir aus meiner Sicht weniger Wartbarkeit des Codes, aber ich kann es nicht auf andere Weise tun.