Wie Sie die Hibernate-Verwarnungswarnung entfernen

8

Wir haben eine Frage:

%Vor%

Beim Ausführen dieser Abfrage wurde jedoch eine Warnmeldung angezeigt:

  

WARN 10:19:41 Ablehnen: HHH90000016: Verwendung von veraltet gefunden   'collection property' Syntax in HQL / JPQL-Abfrage [null.elements];   Verwenden Sie stattdessen die Syntax der Auflistungsfunktion [elements (null)].

Ich habe versucht, die Abfrage zu ändern:

%Vor%

aber die Warnmeldung war immer noch da.

Bitte helfen Sie mir, diese Warnung zu beheben.

P / s: Wir verwenden derzeit Hibernate 5.0.2

    
Minh Nguyen 26.10.2015, 03:48
quelle

3 Antworten

7

Es ist eine legale JPA und sollte daher nicht veraltet sein. Siehe auch Ссылка .

Siehe Ссылка für die JIRA über diesen Fehler.

Sie könnten die Nachricht einfach ausblenden, indem Sie log4j.logger.org.hibernate.orm.deprecation=error zu log4j.properties hinzufügen.

(Ich weiß, das war eine alte Frage, aber sie wird im JIRA-Call verwendet)

    
Milo van der Zee 03.07.2016 12:43
quelle
6

Verwenden Sie statt MEMBER OF lieber ein INNER JOIN . Die JSQL sollte dann

sein

from Book b inner join b.bookCategories bc where bc.id = :categoryId

Referenz: Ссылка

    
n002213f 20.11.2015 12:07
quelle
0

Als Nebenbemerkung, um Nachrichten wie diese einfach zu verbergen (nicht zu reparieren), verwenden Sie ab 2017 und Log4j2 org.hibernate.orm.deprecation , zum Beispiel:

%Vor%

Achten Sie darauf, dass Sie den spezifischen Code für Ihre bestimmte Verfallsmeldung verwenden, in diesem Fall war es HHH90000016 , aber für Criteria-API-Verwarnungswarnungen wäre es HHH90000022 und so weiter.

Oder deaktivieren Sie alle Hibernate Deprecation-Nachrichten (nicht empfohlen):

%Vor%     
MarcG 03.07.2017 18:07
quelle