Ich habe eine Entität namens Band
mit einem Attribut List<Genres> genres
, Genres ist ein ENUM mit den folgenden Werten: ALTERNATIVE_ROCK("Alternative Rock"), CLASSIC_ROCK("Classic Rock"), HARD_ROCK("Hard Rock"), HEAVY_METAL("Heavy Metal"),PROGRESSIVE_ROCK("Progressive Rock");
Ich versuche, eine Methode zu erstellen, die ein List<Band>
mit einem List<Genres>
als Parameter unter Verwendung von HQL zurückgibt, etwa wie folgt:
Aber ich erhalte einige Fehler mit HQL-Abfragen, die ich versucht habe?
Über einigen HQL-Abfragen, die ich versucht habe ...
%Vor%gibt einen Fehler zurück, der besagt, dass eine ArrayList nicht in Enum umgewandelt werden kann ...
oder ...
%Vor%gibt einen Fehler zurück wie: Dereferenz Skalar Collection Element ENUM
Eigenschaft genres mapping, entity Band ...
%Vor%Dies funktioniert für Hibernate 4
%Vor% Überprüfen Sie, dass die Methode Query#setParameterList
anstelle von Query#setParameter
verwendet wird und dass g
nicht g.value
verwendet wird.
Ich glaube nicht, dass Sie das tun können. Laut JPA-Spezifikation (Abschnitt 4.6.9. Seite 185) Listen werden nicht als linker Operand mit IN
Ausdruck unterstützt.
Tags und Links java hibernate persistence enums hql