IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

Hibernate Dialect must be explicitly set


Sujet :

Hibernate Java

  1. #1
    Membre habitué
    Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2007
    Messages : 439
    Points : 178
    Points
    178
    Par défaut Hibernate Dialect must be explicitly set
    Bonjour , novice dans l'utilisation de Hibernate .
    J'obtiens une erreur Hibernate Dialect must be explicitly set.
    Voici l'erreur complète:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Exception in thread "main" org.hibernate.HibernateException: Hibernate Dialect must be explicitly set
    	at org.hibernate.dialect.DialectFactory.determineDialect(DialectFactory.java:57)
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:39)
    	at org.hibernate.cfg.SettingsFactory.determineDialect(SettingsFactory.java:426)
    	at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:128)
    	at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2073)
    	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1298)
    	at test.TestHibernate3.main(TestHibernate3.java:17)
    Lors de l'appel du code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    package test;
     
    import mywebapp.bean.data.Article;
     
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.Transaction;
    import org.hibernate.cfg.Configuration;
     
    public class TestHibernate1 {
     
      public static void main(String args[]) throws Exception {
        Configuration config = new Configuration();
        config.addClass(Article.class);
        SessionFactory sessionFactory = config.buildSessionFactory();
        Session session = sessionFactory.openSession(); 
     
        Transaction tx = null; 
        try { 
          tx = session.beginTransaction(); 
          Article article = new Article("6","Montre");
          session.save(article);
          session.flush() ;
          tx.commit();
        } catch (Exception e) {
          if (tx != null) {
            tx.rollback();
          }
          throw e;
        } finally { 
          session.close(); 
        } 
     
        sessionFactory.close(); 
      } 
    }
    Je suppose que c'est peut etre le fichier de config qui porte un problème:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
              "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
              "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
    <hibernate-configuration>
    <session-factory>
    	<property name="connection.url">jdbc:mysql://localhost/test</property>
    	<property name="connection.username">root</property>
    	<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    	<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
    	<property name="connection.password"></property>
     <property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
        <!--  thread is the short name for
          org.hibernate.context.ThreadLocalSessionContext
          and let Hibernate bind the session automatically to the thread
        -->
        <property name="current_session_context_class">thread</property>
        <!-- this will show us all sql statements -->
        <property name="hibernate.show_sql">true</property>
     
    	<!-- mapping files -->
    	<mapping resource="mywebapp/persistance/data/Article.hbm.xml" />
    	<mapping resource="mywebapp/persistance/data/Panier.hbm.xml" />
     
    </session-factory>
    </hibernate-configuration>
    Avec Article.hbm.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping
        PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
     
    <hibernate-mapping>
    	<class name="Article" table="article">
    		<id name="reference" type="string" />
    			<property name="nom" type="string" not-null="true" />
     
    	</class>
    </hibernate-mapping>
    et Panier.hbm.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     <?xml version="1.0"?>
      <!DOCTYPE hibernate-mapping
        PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
     
        <hibernate-mapping>
      <class name="Panier" table="panier">
     <id></id>
     <property name="quantite" type="int" not-null="true" />
     <property name="reference" type="string" not-null="true" />
     
      </class>
    </hibernate-mapping>
    La connexion à la base de données est bien configurée...
    Comment résoudre le problème ?
    merci

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Essaie avec la propriété hibernate.dialect dans ton hibernate.cfg.xml au lieu de dialect.

  3. #3
    Membre habitué
    Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2007
    Messages : 439
    Points : 178
    Points
    178
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Essaie avec la propriété hibernate.dialect dans ton hibernate.cfg.xml au lieu de dialect.
    même chose.

  4. #4
    Membre habitué
    Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2007
    Messages : 439
    Points : 178
    Points
    178
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
         sessionFactory = config.buildSessionFactory();

  5. #5
    Membre confirmé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 298
    Points : 484
    Points
    484
    Par défaut
    Essaye ça, pour voir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Configuration config = new Configuration().configure("hibernate.cfg.xml");

  6. #6
    Membre habitué
    Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2007
    Messages : 439
    Points : 178
    Points
    178
    Par défaut
    j'ai utilisé en même temps le fichier hibernate.properties et ça marche.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/06/2014, 14h00
  2. Hibernate Dialect must be explicitly set
    Par high4life dans le forum Hibernate
    Réponses: 2
    Dernier message: 23/02/2011, 14h55
  3. Réponses: 2
    Dernier message: 22/09/2009, 17h27
  4. Hibernate Dialect must be explicitly set
    Par coold dans le forum JPA
    Réponses: 1
    Dernier message: 14/06/2009, 11h18
  5. Hibernate: many-to-many, collections SET vides
    Par tzikin dans le forum Hibernate
    Réponses: 1
    Dernier message: 20/02/2007, 13h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo