Bonjour,
J'ai un problème avec Hibernate que je ne comprends pas.
Quand j'exécute mon application à partir d'Eclipse voici l'erreur que j'obtiens :
Toutes mes excuses si ma préoccupation parait bête, en fait je suis totalement nouveau au framework hibernate
Fichier hibernate.cfg.xml généré:
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 20 [main] INFO org.hibernate.cfg.Environment - Hibernate 3.3.2.GA 30 [main] INFO org.hibernate.cfg.Environment - hibernate.properties not found 30 [main] INFO org.hibernate.cfg.Environment - Bytecode provider name : javassist 40 [main] INFO org.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling 110 [main] INFO org.hibernate.cfg.Configuration - configuring from resource: /hibernate.cfg.xml 110 [main] INFO org.hibernate.cfg.Configuration - Configuration resource: /hibernate.cfg.xml 210 [main] ERROR org.hibernate.util.XMLHelper - Error parsing XML: /hibernate.cfg.xml(6) Le type d'élément "Hibernate-configuration" doit être déclaré. Echec creation session factory org.hibernate.MappingException: invalid configuration Exception in thread "main" java.lang.ExceptionInInitializerError at util.HibernateUtil.<clinit>(HibernateUtil.java:15) at manager.ClientManager.ajouterClient(ClientManager.java:11) at test.Test_Main.main(Test_Main.java:14) Caused by: org.hibernate.MappingException: invalid configuration at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1535) at org.hibernate.cfg.Configuration.configure(Configuration.java:1476) at org.hibernate.cfg.Configuration.configure(Configuration.java:1462) at util.HibernateUtil.<clinit>(HibernateUtil.java:12) ... 2 more Caused by: org.xml.sax.SAXParseException; lineNumber: 6; columnNumber: 26; Le type d'élément "Hibernate-configuration" doit être déclaré. at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(Unknown Source) at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at org.dom4j.io.SAXReader.read(SAXReader.java:465) at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1532) ... 5 more
Code :
Fichier Client.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
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <?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.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/bd_client</property> <property name="connection.username">root</property> <property name="connection.password"></property> <property name="connection.pool_size">1</property> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <property name="current_session_context_class">thread</property> <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property> <property name="show_sql">true</property> <property name="hbm2ddl.auto">create</property> <mapping resource="bean/Client.hbm.xml"/> </session-factory> </Hibernate-configuration>
Code :
Fichier HibernateUtil:
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 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="bean.Client" table="TClient"> <id name="idClient" column="idClient"> <generator class="increment" /> </id> <property name="nomClient" column="nomClient" /> <property name="prenClient" column="prenCLient" /> <property name="adrClient" column="adrClient" /> <property name="telClient" column="telClient" /> </class> </hibernate-mapping>
Code :
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 package util; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class HibernateUtil { public static final SessionFactory sf; static{ try{ sf = new Configuration().configure().buildSessionFactory(); }catch(Throwable ex){ System.err.println("Echec creation session factory "+ ex); throw new ExceptionInInitializerError(ex); } } public static SessionFactory getSessionFactory(){ return sf; } }
Je ne trouve pas où est l'erreur...
Merci pour l'aide
Partager