AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Hibernate und DAO und Reports
Thema durchsuchen
Ansicht
Themen-Optionen

Hibernate und DAO und Reports

Ein Thema von BörmtDieBuse · begonnen am 6. Mai 2015 · letzter Beitrag vom 13. Mai 2015
Antwort Antwort
BörmtDieBuse

Registriert seit: 25. Mär 2015
26 Beiträge
 
#1

AW: Hibernate und DAO und Reports

  Alt 7. Mai 2015, 08:24
Ich hab bei Stackoverflow nach meinem Problem gesucht und auch etwas gefunden aber leider hab ich jetzt ein anderes Problem
wo ich keine Lösung finde. Aus Sicherheitsgründen habe ich die "hibernate.connection.url" allgemein gehaten

Besonders das verwundet mich, "INFO: HHH000206: hibernate.properties not found"
versteh ich nicht warum er sie nicht finden sollte. Mein classpath hab ich nicht verändert und mein hibernate.cfg.xml file liegt in "src"

Ich hoffe einer kann mir weierhelfen, versuch das ganze schon seit gestern vormittag zu lösen.
Vielen Dank!

Code:
package hibernate;
 import java.util.Date;

 import org.hibernate.Session;
 import org.hibernate.SessionFactory;
 import org.hibernate.cfg.Configuration;

 import persistencelayer.*;

 public class HibernateTest {

 public static void main(String[] args) {

    TestUserDetails user2 = new TestUserDetails();
    user2.setUserId(1);
    user2.setUserName("First User");
    user2.setAddress("First User's address");
    user2.setJoinedDate(new Date());
    user2.setDescription("Description of the user goes here");

    try {
    //SessionFactory wird erzeugt, mit der Konfiguration von Hibernate
    SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
    Session session = sessionFactory.openSession();
    session.beginTransaction();

 //     session.save(user);

    session.save(user2);
    session.getTransaction().commit();
    } catch (Exception e) {
        System.out.println("Fehler beim erstellen der SessionFactory");
    }



}

}

Hibernate.cfg.xml Konfiguration
Code:
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

<session-factory>
    <!-- Database connection settings -->
    <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
    <property name="hibernate.connection.url">jdbc:oracle:thin:@host:port:ssid:</property>
    <property name="hibernate.connection.username">name</property>
    <property name="hibernate.connection.password">password</property>

    <!-- JDBC connection pool (use the built-in) -->
    <property name="hibernate.connection.pool_size">1</property>

    <!-- SQL dialect -->
    <property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>

    <!-- Disable the second-level cache -->
    <property name="hibernate.cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property>

    <!-- Echo all executed SQL to stdout -->
    <property name="hibernate.show_sql">true</property>

    <!-- Drop and re-create the database schema on startup -->
    <property name="hibernate.hbm2ddl.auto">create</property>

    <!-- Names the annotated entity class -->
    <mapping class="persistencelayer.Project"/>
    <mapping class="persistencelayer.User"/>
    <!-- <mapping class="persistencelayer.Employer"/>
    <mapping class="persistencelayer.IndividualTest"/>
    <mapping class="persistencelayer.ObjectType"/>
    <mapping class="persistencelayer.TestChamber"/>
    <mapping class="persistencelayer.TestMethod"/>
    <mapping class="persistencelayer.TestUserDetails"/> -->


</session-factory>
Fehlermeldungen
Code:
Mai 07, 2015 7:50:32 AM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
Mai 07, 2015 7:50:32 AM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.3.9.Final}
Mai 07, 2015 7:50:32 AM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Mai 07, 2015 7:50:33 AM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Mai 07, 2015 7:50:33 AM org.hibernate.cfg.Configuration configure
INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml
Mai 07, 2015 7:50:33 AM org.hibernate.cfg.Configuration getConfigurationInputStream
INFO: HHH000040: Configuration resource: /hibernate.cfg.xml
Mai 07, 2015 7:50:33 AM org.hibernate.cfg.Configuration doConfigure
INFO: HHH000041: Configured SessionFactory: null
Mai 07, 2015 7:50:33 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
WARN: HHH000402: Using Hibernate built-in connection pool (not for production use!)
Mai 07, 2015 7:50:33 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH000401: using driver [oracle.jdbc.driver.OracleDriver] at URL [jdbc:oracle:thin:@host:port:ssid:]
Mai 07, 2015 7:50:33 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH000046: Connection properties: {user=qqrhldb, password=****}
Mai 07, 2015 7:50:33 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH000006: Autocommit mode: false
Mai 07, 2015 7:50:33 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000115: Hibernate connection pool size: 1 (min=1)
Fehler beim erstellen der SessionFactory
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.008 Beiträge
 
Delphi 2009 Professional
 
#2

AW: Hibernate und DAO und Reports

  Alt 7. Mai 2015, 10:30
I
Besonders das verwundet mich, "INFO: HHH000206: hibernate.properties not found"
versteh ich nicht warum er sie nicht finden sollte.
Ist die hibernate.properties auch im erzeugten Java Programm vorhanden? Vielleicht hat die IDE diese Datei nicht mit in das Ausgabeverzeichnis / Jar kopiert.

p.s. ich konnte ein Hibernate 4 Projekt mit NetBeans aufbauen und darin ist keine hibernate.properties enthalten. Ich binde im Maven POM nur eine Dependency ein:

Code:
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.3.9.Final</version>
        </dependency>
Ich sehe im Log auch

INFO: HHH000206: hibernate.properties not found

Aber das Programm läuft.
Michael Justin

Geändert von mjustin ( 7. Mai 2015 um 12:21 Uhr)
  Mit Zitat antworten Zitat
BörmtDieBuse

Registriert seit: 25. Mär 2015
26 Beiträge
 
#3

AW: Hibernate und DAO und Reports

  Alt 7. Mai 2015, 12:28
I
Besonders das verwundet mich, "INFO: HHH000206: hibernate.properties not found"
versteh ich nicht warum er sie nicht finden sollte.
Ist die hibernate.properties auch im erzeugten Java Programm vorhanden? Vielleicht hat die IDE diese Datei nicht mit in das Ausgabeverzeichnis / Jar kopiert.

p.s. ich konnte ein Hibernate 4 Projekt mit NetBeans aufbauen und darin ist keine hibernate.properties enthalten. Ich binde im Maven POM nur eine Dependency ein:

Code:
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.3.9.Final</version>
        </dependency>
Ich hab einfach mal alle jar dateien mit eingebunden die in der offizielen hibernate 4.3.9zip datei dabei sind.
Es kommen trotzdem die selben Fehlermeldungen.
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.008 Beiträge
 
Delphi 2009 Professional
 
#4

AW: Hibernate und DAO und Reports

  Alt 7. Mai 2015, 13:14
Ich hab einfach mal alle jar dateien mit eingebunden die in der offizielen hibernate 4.3.9zip datei dabei sind.
Es kommen trotzdem die selben Fehlermeldungen.
Ich vermute dass der JDBC Treiber für Oracle etwas an den Connection-Parametern nicht erkennt/unterstützt oder vermisst.

Das ist etwas ungünstig für die Fehlersuche:

Code:
} catch (Exception e) {
        System.out.println("Fehler beim erstellen der SessionFactory");
    }
Da sollte auch der Stacktrace ausgegegeben werden.

Code:
e.printStackTrace();
p.s. am Ende habe ich noch ein sessionFactory.close() eingefügt, damit Programm terminiert.
Michael Justin

Geändert von mjustin ( 7. Mai 2015 um 13:34 Uhr)
  Mit Zitat antworten Zitat
BörmtDieBuse

Registriert seit: 25. Mär 2015
26 Beiträge
 
#5

AW: Hibernate und DAO und Reports

  Alt 7. Mai 2015, 13:35

Code:
} catch (Exception e) {
        System.out.println("Fehler beim erstellen der SessionFactory");
    }
Da sollte auch der Stacktrace ausgegegeben werden.

Code:
e.printStackTrace();
Du hast vollkommen recht, das kommt für printStackTrace raus.
Code:
org.hibernate.exception.JDBCConnectionException: Error calling Driver#connect
   at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:132)
   at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator$1$1.convert(BasicConnectionCreator.java:118)
   at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator.convertSqlException(BasicConnectionCreator.java:140)
   at org.hibernate.engine.jdbc.connections.internal.DriverConnectionCreator.makeConnection(DriverConnectionCreator.java:58)
   at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator.createConnection(BasicConnectionCreator.java:75)
   at org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.configure(DriverManagerConnectionProviderImpl.java:106)
   at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111)
   at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234)
   at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206)
   at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.buildJdbcConnectionAccess(JdbcServicesImpl.java:260)
   at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:94)
   at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111)
   at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234)
   at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206)
   at org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1887)
   at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1845)
   at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1930)
   at hibernate.HibernateTest.main(HibernateTest.java:23)
Caused by: java.sql.SQLRecoverableException: I/O-Fehler: Invalid connection string format, a valid format is: "host:port:sid"
   at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:489)
   at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:553)
   at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:254)
   at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
   at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:528)
   at org.hibernate.engine.jdbc.connections.internal.DriverConnectionCreator.makeConnection(DriverConnectionCreator.java:55)
   ... 14 more
Caused by: oracle.net.ns.NetException: Invalid connection string format, a valid format is: "host:port:sid"
   at oracle.net.resolver.AddrResolution.resolveSimple(AddrResolution.java:504)
   at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:437)
   at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:693)
   at oracle.net.ns.NSProtocol.connect(NSProtocol.java:251)
   at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1140)
   at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:340)
   ... 19 more
ich hab nochmal mein "host:port:sid" überprüft, hab exakt das rauskopiert, was auch im Oracle SQL Developer drin steht.
kann es vllt sein das er nicht erkennt, welche DB er ansprechen soll? ich hab 2 drin, einmal namens "Test" und einmal "Umweltlabor".
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.008 Beiträge
 
Delphi 2009 Professional
 
#6

AW: Hibernate und DAO und Reports

  Alt 7. Mai 2015, 13:43
ich hab nochmal mein "host:port:sid" überprüft, hab exakt das rauskopiert, was auch im Oracle SQL Developer drin steht.
kann es vllt sein das er nicht erkennt, welche DB er ansprechen soll? ich hab 2 drin, einmal namens "Test" und einmal "Umweltlabor".
Im hibernate.cfg.xml steht (siehe oben) "jdbc:oracle:thin:@host:port:ssid:" als URL und da ist am Ende ein Doppelpunkt, der dort nicht sein sollte.
Michael Justin
  Mit Zitat antworten Zitat
BörmtDieBuse

Registriert seit: 25. Mär 2015
26 Beiträge
 
#7

AW: Hibernate und DAO und Reports

  Alt 11. Mai 2015, 15:20
ich hab nochmal mein "host:port:sid" überprüft, hab exakt das rauskopiert, was auch im Oracle SQL Developer drin steht.
kann es vllt sein das er nicht erkennt, welche DB er ansprechen soll? ich hab 2 drin, einmal namens "Test" und einmal "Umweltlabor".
Im hibernate.cfg.xml steht (siehe oben) "jdbcracle:thin:@host:port:ssid:" als URL und da ist am Ende ein Doppelpunkt, der dort nicht sein sollte.
Vielen Dank, du hast recht, das hab ich komplett übersehen.

Ich hab wieder eine neue Frage zu Hibernate.
Im Anhang kann man sehen, das ich 2 Datenbanken in einer hibernate url hab

Code:
<property name="hibernate.connection.url">jdbc:oracle:thin:@host:1631:sid</property>
Weiß jemand, wie ich nur Umweltlabor ansprechen kann und nicht Test? Zurzeit wird alles nur in Test reingeschrieben
Ich hab erst gedacht ich kann es so machen

Code:
<property name="hibernate.connection.url">jdbc:oracle:thin:@host:1631:sid:Umweltlabor</property>
Das passt aber nicht zur Syntax.

Im Internet stand das es so gehen müsste.
Code:
<!--<property name=”hibernate.default_schema”>Umweltlabor</property> -->
Funzt leider auch nicht.

Egal wo ich such wird der Fall von 2 DBs in einer URL nicht beschrieben.
Weiß jemand Rat?
Danke!
Angehängte Grafiken
Dateityp: png Oracle SQL Developer.PNG (28,9 KB, 4x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz