wie man den Fehler behebt: "INFO: HHH000206: hibernate.properties nicht gefunden"?

8

Ich habe versucht zu testen, ob die Ruhezustand-Konfiguration ordnungsgemäß funktioniert. Ich habe versucht, aber ich habe einen Fehler:

%Vor%

Um dies zu tun: Ich erstelle:

[1] Konfigurationsdatei für den Ruhezustand [mit XML]

%Vor%

[2] Eine Hibernate-Dienstprogrammklasse

%Vor%

[3] Das Hauptprogramm:

%Vor%

Aber ich habe Folgendes, wenn ich das Programm starte:

%Vor%

Um das zu lösen, habe ich Google ausprobiert und die Methoden angewendet, die ich gefunden habe. aber ich konnte das Problem nicht lösen. Kann mir bitte jemand helfen?

    
adarksun 30.09.2013, 02:57
quelle

5 Antworten

12

Das ist nur eine INFO-Nachricht, die besagt, dass Sie keine hibernate.properties -Datei haben. Diese Eigenschaftendatei ist nicht obligatorisch und verhindert nicht, dass Ihre Anwendung funktioniert.

Wenn Sie wissen möchten, was den Fehler bei der Erstellung von SessionFactory verursacht hat, müssen Sie Ihren catch-Block folgendermaßen ändern:

%Vor%

Sie sollten stattdessen ein Protokollierungsframework verwenden.

    
Vlad Mihalcea 23.02.2016 15:00
quelle
3

Ihr Problem ist die Erstellung der Factory-Sitzung für Ihre Anwendung, die in HibernateUtilities klasse stattfindet. Der Grund dafür könnte sein, dass Sie keine sessionfactory von sessionRegistry create it von hibernate Configuration class erstellen können. weil du deine Konfiguration in hibernate.cfg.xml

registriert hast

Ersetzen Sie einfach den folgenden Code in der HibernateUtilities-Klasse

%Vor%

bis

%Vor%     
kark 30.09.2013 04:02
quelle
2

In meinem Fall habe ich den Hibernate 5 mit JPA-Anmerkungen auf tomcat ausgeführt und hörte auf zu arbeiten, als ich zu glassfish 4.1

wechselte

Der Fehler:

hibernate.properties nicht gefunden

Stellen Sie sicher: src / main / resources / hibernate.cfg.xml existiert

Und wenn Sie nur die Abhängigkeit von Hibernate-Core haben, habe ich Hibernate-Annotations und Hibernate-Common-Annotations verwendet und es wurde ein Konflikt erzeugt. Der Winterschlaf 5 benötigt diese beiden nicht, ich hatte irgendwo gelesen. Versuchen Sie zu entfernen;)

Danach erscheint ein neuer Fehler:

java.lang.NoSuchMethodError: org.jboss.logging.Logger.debugf (Ljava / lang / Zeichenfolge; I) V

Der Grund war die älteste jboss-logging.jar unter: "YOUR_GLASSFISH_FOLDER / glassfish / modules"

Warum? Der hibernate 5 hat eine Abhängigkeit mit der neuesten Version von jboss-logging und glassfish 4 verwendet die älteste Version, selbst wenn Sie in Ihrer POM-Datei die neueste Version deklarieren. Eigentlich verwende ich:

%Vor%

Dann habe ich es heruntergeladen und die alte .jar innerhalb des Modulpfads ersetzt und es wieder an die Arbeit gebracht. Ich habe 2 Tage damit verbracht, das Problem zu lösen, und ich hoffe, es hilft bei zukünftigen Problemen = D

Ich habe diesen Link benutzt, um mir zu helfen: Ссылка

Eine andere Lösung könnte in meinem Fall die letzte Version von Hibernate 4 sein (4.3.11.Final), aber meiner Meinung nach ist sie schon zu alt

    
Vitorlui 25.08.2016 10:47
quelle
1

Die Konfigurationsdateien müssen im Klassenpfad platziert werden. Stellen Sie sicher, dass sich die Datei hibernate.cfg.xml im Klassenpfad befindet. Da Ihr Programm ein Konsolenprogramm ist, müssen Sie diese hibernate.cfg.xml im src-Ordner ablegen. Wenn Sie es in einem anderen Ordner als in Confingure.configure(fileName); angegeben haben Und wie von Mr.Kark beantwortet, müssen Sie folgende Zeilen löschen

serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();

    
Hareesh 30.09.2013 05:34
quelle
0

Ich denke, du verpasst einige Hibernate-Bibliotheken (vielleicht hibernate-tools.jar , denke ich). Also schau es dir an.

Wie auch immer, ich habe gesehen, wie Sie die Hibernate-Annotationen verwendet haben. Versuchen Sie also bitte diesen Code und sehen Sie, was mit den nicht gefundenen Fehlereigenschaften passiert.

%Vor%     
Ha Nguyen 30.09.2013 08:37
quelle

Tags und Links