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] component type bad identifier


Sujet :

Hibernate Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut [hibernate] component type bad identifier
    Hello à tous,

    J'ai un problème avec hibernate.
    J'ai tout configuré, il me semble correctement, et quand je démarre le serveur tomcat j'ai l'erreur suivante que je n'arrive pas à résoudre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    GRAVE: Initial SessionFactory creation failed.net.sf.hibernate.MappingException: Bad identifier type: net.sf.hibernate.type.ComponentType
    Il a l'air de me faire tout les mapping (dans la console) et l'erreur vient une fois qu'il a parcouru toute les tables de la base.

    Dans hibernate configurations, il m'affiche bien toutes les tables....

    Configuration actuelle :

    Tomcat 6.0
    Hibernate tools 3.2
    Eclipse Europa

    Extrait de hibernate.cfg.xml :
    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
     
    <?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 name="session">
            <property name="hibernate.bytecode.use_reflection_optimizer">false</property>
            <property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driver</property>
            <property name="hibernate.connection.password">mdp</property>
            <property name="hibernate.connection.url">jdbc:mysql://X.X.X.X:3306/BASE</property>
            <property name="hibernate.connection.username">root</property>
            <property name="hibernate.default_schema">BASE</property>
            <property name="hibernate.dialect">net.sf.hibernate.dialect.MySQLDialect</property>
     
            <!-- Use the C3P0 connection pool. -->
            <property name="c3p0.min_size">3</property>
            <property name="c3p0.max_size">5</property>
            <property name="c3p0.timeout">1800</property>
     
            <!-- Print SQL to stdout. -->
            <property name="show_sql">true</property>
            <property name="format_sql">true</property>
     
            <!-- Drop and then re-create schema on SessionFactory build, for testing. -->
            <property name="hbm2ddl.auto">create</property>
     
            <!-- Bind the getCurrentSession() method to the thread. -->
            <property name="current_session_context_class">thread</property>
     
            <mapping resource="model/Table1.hbm.xml" />
           .....
    Je vous remercie de l'aide que vous pourrez m'apporter !!

  2. #2
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour.
    Tout d'abord, je ne comprends pas une chose: ta configuration est normalement pour Hibernate 3, mais le package net.sf indique Hibernate 2 ... T'es sur de la version de Hibernate que tu utilises ? Vérifies les jars de ton application et utilises plutôt les packages de Hibernate 3 apparemment, ton problème vient de là.

    Bonne chance.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    Dans les jars j'utilise hibernate2. A quoi vois tu que la config est pour hibernate 3 ?

  4. #4
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bah Hibernate eclipse tools sont faits pour Hibernate 3

    http://www.hibernate.org/hib_docs/to...html/pr01.html

    C'est clair, non ?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    Oui c'est clair !!

    Mais que faut-il que je fasse alors pour modifier cela ? Faut-il que je recommence tout ? Ou si je change juste le jar : hibernate 2 par le jar d'hibernate 3 cela fonctionnera ?

    Merci !!! Je m'arrache les cheveux....

  6. #6
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Exact: remplaces les jars d'Hibernate 2 par ceux d'Hibernate 3.
    Tiens nous au courant.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    J'ai remplacé les jar. Le serveur redémarre beaucoup beaucou plus vite !!!

    Mais j'obtiens l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Could not instantiate dialect class
    Je ne sais si il faut que je mette :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    org.hibernate.dialect.MySQLDialect
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    net.sf.hibernate.dialect.MySQLDialect
    Et si mes imports dans ma classe HibernateUtil si il faut qu'ils soient en net.sf ou org. ; ils etaient en net.sf et je les ai tous remplacés en org.

    Extrait de la console :
    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
     
    GRAVE: Initial SessionFactory creation failed.org.hibernate.HibernateException: Could not instantiate dialect class
    30 nov. 2007 16:40:49 org.apache.catalina.core.StandardContext listenerStart
    GRAVE: Exception lors de l'envoi de l'évènement contexte initialisé (context initialized) à l'instance de classe d'écoute (listener) configHibernate.HibernateListener
    java.lang.ExceptionInInitializerError
    	at configHibernate.HibernateUtil.<clinit>(HibernateUtil.java:28)
    	at configHibernate.HibernateListener.contextInitialized(HibernateListener.java:12)
    	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3830)
    	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337)
    	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    	at java.lang.reflect.Method.invoke(Unknown Source)
    	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
    	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
    Caused by: org.hibernate.HibernateException: Could not instantiate dialect class
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:84)
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:42)
    	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:2009)
    	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
    	at configHibernate.HibernateUtil.<clinit>(HibernateUtil.java:24)
    	... 16 more
    Caused by: java.lang.ClassCastException: net.sf.hibernate.dialect.MySQLDialect cannot be cast to org.hibernate.dialect.Dialect
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:78)
    	... 22 more

  8. #8
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Il faut toujours passer par org.hibernate.xxxxx au lieu de net.sf.xxxxx

    Dans ton cas, net.sf.hibernate.dialect.MySQLDialect devient org.hibernate.dialect.MySQLDialect.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    Le problème c'est que j'ai une nouvelle erreur que je ne localise pas...

    J'ai remplacé net.sf en org dans les fichiers :
    HibernateListener.java
    HibernateUtil.java
    hibernate.cfg.xml

    Voici l'erreur que j'ai maintenant :
    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
     
    GRAVE: Initial SessionFactory creation failed.java.lang.NoSuchMethodError: net.sf.cglib.proxy.Enhancer.setInterceptDuringConstruction(Z)V
    30 nov. 2007 16:54:47 org.apache.catalina.core.StandardContext listenerStart
    GRAVE: Exception lors de l'envoi de l'évènement contexte initialisé (context initialized) à l'instance de classe d'écoute (listener) configHibernate.HibernateListener
    java.lang.ExceptionInInitializerError
    	at configHibernate.HibernateUtil.<clinit>(HibernateUtil.java:28)
    	at configHibernate.HibernateListener.contextInitialized(HibernateListener.java:12)
    	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3830)
    	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337)
    	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    	at java.lang.reflect.Method.invoke(Unknown Source)
    	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
    	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
    Caused by: java.lang.NoSuchMethodError: net.sf.cglib.proxy.Enhancer.setInterceptDuringConstruction(Z)V
    	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.getProxyFactory(CGLIBLazyInitializer.java:126)
    	at org.hibernate.proxy.pojo.cglib.CGLIBProxyFactory.postInstantiate(CGLIBProxyFactory.java:43)
    	at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:162)
    	at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:135)
    	at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:55)
    	at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:56)
    	at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:295)
    	at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:434)
    	at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)
    	at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
    	at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)
    	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
    	at configHibernate.HibernateUtil.<clinit>(HibernateUtil.java:24)
    	... 16 more
    Merci beaucoup !!!!

  10. #10
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Oki, maintenant, il s'agit de cglib: Tu as une ancienne version à ce qu'il parait. Remplaces celle que tu as par cglib-nodep-2.1_3.jar qui vient avec Hibernate 3 je crois.

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    Bon je crois que cela fonctionne mais rien de sur...

    Le démarrage me semble anormalement court :
    Contenu de la console COMPLET :
    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
     
    30 nov. 2007 17:06:08 org.apache.catalina.core.AprLifecycleListener init
    INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre1.6.0_03\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Java\jre1.6.0_03\bin\client;C:\Program Files\Java\jre1.6.0_03\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\MySQL\MySQL Server 5.0\bin
    30 nov. 2007 17:06:08 org.apache.coyote.http11.Http11Protocol init
    INFO: Initialisation de Coyote HTTP/1.1 sur http-8082
    30 nov. 2007 17:06:08 org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 2054 ms
    30 nov. 2007 17:06:09 org.apache.catalina.core.StandardService start
    INFO: Démarrage du service Catalina
    30 nov. 2007 17:06:09 org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/6.0.14
    log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
    log4j:WARN Please initialize the log4j system properly.
    30 nov. 2007 17:06:25 org.apache.coyote.http11.Http11Protocol start
    INFO: Démarrage de Coyote HTTP/1.1 sur http-8082
    30 nov. 2007 17:06:25 org.apache.jk.common.ChannelSocket init
    INFO: JK: ajp13 listening on /0.0.0.0:8009
    30 nov. 2007 17:06:25 org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/170  config=null
    30 nov. 2007 17:06:25 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 16898 ms
    Avant il me faisait le mapping de toutes les tables, et la il ne fait plus tout ca.
    Comment être sur que tout marche ?

    Merci beaucoup de ton aide précieuse !!

  12. #12
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Content q'on ai plus d'exceptions

    Essaies de persister une classe pour tester si ça marche ou po !

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    Yep,

    Voici ce que j'ai fait :
    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
     
    Session session = configHibernate.HibernateUtil.currentSession();
     
    		Transaction tx = session.beginTransaction();
     
    		TUtilisateur user1 = new TUtilisateur();
    		user1.setNomUser("titi");
    		user1.setPrenomUser("tata");
    		user1.setPseudoUser("toto");
    		user1.setStatutUser("actif");
    		user1.setPasswordUser("123");
    		user1.setAdresseMailUser("toto.tata@gmail.com");
    		user1.setRelationNewsletterUser((short)1);
    		user1.setRelationPartenaireUser((short)1);
    		user1.setDonneesPublicUser((short)1);
    		session.save(user1);
     
    		tx.commit();
     
    		configHibernate.HibernateUtil.closeSession();
    Et voici ce qu'il me met dans la console :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Hibernate: 
        insert 
        into
            PFE.PFE.t_utilisateur
            (ID_CONTENU_MARQUE, ID_CONTENU_DISTRIBUTEUR, ID_CONTENU_REVENDEUR, STATUT_USER, INSCRIPTION_CLEF_USER, DESINSCRIPTION_CLEF_USER, ADRESSE_MAIL_USER, PSEUDO_USER, PASSWORD_USER, NOM_USER, PRENOM_USER, AVATAR_USER, RELATION_PARTENAIRE_USER, RELATION_NEWSLETTER_USER, DONNEES_PUBLIC_USER, DATE_HEURE_DERNIERE_CONNEXION_USER, DATE_INSCRIPTION_USER, TOTAL_REMUNERATION_USER, DROIT_USER, ID_PHPBB_USER, ID_UTILISATEUR) 
        values
            (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
    30 nov. 2007 18:20:39 org.apache.catalina.core.StandardWrapperValve invoke
    GRAVE: "Servlet.service()" pour la servlet inscription a généré une exception
    org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
    Et je ne comprend pas pourquoi.....les champs saisi correspondent aux champs obligatoires de ma table.

    Merci beaucoup !

  14. #14
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Tu peux envoyer le reste du stackTrace s'il te plaît ?
    P.S.: Si eclipse ne te l'affiche pas, pense à ajouter un fichier log4j.properties dans le dossier src.

    celui-ci fera l'affaire:
    log4j.rootLogger=INFO, console
    log4j.appender.console=org.apache.log4j.ConsoleAppender
    log4j.appender.console.layout=org.apache.log4j.PatternLayout
    log4j.appender.console.layout.ConversionPattern=%5p [%t] (%F\:%L) - %m%n
    P.S.: Je vois que tu es en plein pfe: Bonne chance
    P.S.2: Penses à consulter un document sur les conventions de nommage en Java (miniscules pour les noms de packages par exemple, etc.)

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    oui en effet

    J'ai créé le fichier log4j.properties a la racine de src.

    voici l'ensemble de la console :
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    30 nov. 2007 19:06:06 org.apache.catalina.core.AprLifecycleListener init
    INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre1.6.0_03\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Java\jre1.6.0_03\bin\client;C:\Program Files\Java\jre1.6.0_03\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\MySQL\MySQL Server 5.0\bin
    30 nov. 2007 19:06:06 org.apache.coyote.http11.Http11Protocol init
    INFO: Initialisation de Coyote HTTP/1.1 sur http-8082
    30 nov. 2007 19:06:06 org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 2419 ms
    30 nov. 2007 19:06:06 org.apache.catalina.core.StandardService start
    INFO: Démarrage du service Catalina
    30 nov. 2007 19:06:06 org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/6.0.14
    log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
    log4j:WARN Please initialize the log4j system properly.
    30 nov. 2007 19:06:23 org.apache.coyote.http11.Http11Protocol start
    INFO: Démarrage de Coyote HTTP/1.1 sur http-8082
    30 nov. 2007 19:06:23 org.apache.jk.common.ChannelSocket init
    INFO: JK: ajp13 listening on /0.0.0.0:8009
    30 nov. 2007 19:06:23 org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/250  config=null
    30 nov. 2007 19:06:23 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 17024 ms
    Hibernate: 
        insert 
        into
            PFE.PFE.t_utilisateur
            (ID_CONTENU_MARQUE, ID_CONTENU_DISTRIBUTEUR, ID_CONTENU_REVENDEUR, STATUT_USER, INSCRIPTION_CLEF_USER, DESINSCRIPTION_CLEF_USER, ADRESSE_MAIL_USER, PSEUDO_USER, PASSWORD_USER, NOM_USER, PRENOM_USER, AVATAR_USER, RELATION_PARTENAIRE_USER, RELATION_NEWSLETTER_USER, DONNEES_PUBLIC_USER, DATE_HEURE_DERNIERE_CONNEXION_USER, DATE_INSCRIPTION_USER, TOTAL_REMUNERATION_USER, DROIT_USER, ID_PHPBB_USER, ID_UTILISATEUR) 
        values
            (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
    30 nov. 2007 19:06:25 org.apache.catalina.core.StandardWrapperValve invoke
    GRAVE: "Servlet.service()" pour la servlet inscription a généré une exception
    org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
    	at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
    	at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
    	at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:253)
    	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:237)
    	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
    	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
    	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
    	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
    	at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
    	at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
    	at inscription.doGet(inscription.java:71)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    	at java.lang.Thread.run(Unknown Source)
    Caused by: java.sql.BatchUpdateException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.t_utilisateur (ID_CONTENU_MARQUE, ID_CONTENU_DISTRIBUTEUR, ID_CONTENU_REVENDEUR' at line 1
    	at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1669)
    	at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1085)
    	at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
    	at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
    	at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
    	... 22 more

  16. #16
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    Ca y est mon insertion foncitonne, j'avais un problème de configuration de hibernate.cfg.xml avec le default schema. Cela fonctionne.

    Seulement à chaque fois que je modifie mon code, toutes les données de ma tables sont supprimées et la table est entièrement re-initialisée (auto increment par exemple disparait).

    Avez vous une idée ? Quelque chose que je ne fais pas ?

    Merci de votre aide !!!

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    Personne n'a d'idée ?

    Je me dis que c'est dans la config d'hibernate mais je ne trouve rien....

    Merci de votre aide !

  18. #18
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour.
    Dans le fichier hibernate.cfg.xml, remplaces
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <property name="hbm2ddl.auto">create</property>
    par
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <property name="hbm2ddl.auto">update</property>

    De cette façon, Hibernate va essayer de mettre à jour le schéma sur la base de données au lieu de la recréer.
    N.B.: C'est pas toujours possible, et parfois Hibernate va devoir reccréer le chéma pour refléter tes changements.

    Bonne chance.

  19. #19
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Points : 123
    Points
    123
    Par défaut
    ca a l'air de marcher beaucoup mieux !!!

    Merci !

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 08/09/2008, 16h47
  2. hibernate mapping types
    Par jpclavery dans le forum Hibernate
    Réponses: 2
    Dernier message: 28/03/2008, 14h43
  3. Connexion IRport et Hibernate (component class not found)
    Par imad.elghazoini dans le forum iReport
    Réponses: 4
    Dernier message: 29/06/2007, 11h51
  4. Réponses: 15
    Dernier message: 07/07/2006, 16h30
  5. [Hibernate] Mapping de l'identifiant
    Par BRAUKRIS dans le forum Hibernate
    Réponses: 2
    Dernier message: 02/02/2006, 21h21

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