Hibernate2, eclipse europa et oracle 10g

Fermé
lucky82 - 10 mai 2008 à 21:00
 lucky82 - 11 mai 2008 à 14:32
Bonjour a tous,

je travaille sous eclipse europa et hibernate 3 et oracle 10g, j'ai essayé de suivre les etapes du tutoriel (insertion dans une table) suivant: https://www.developpez.com/telechargements/auth/id/5c1bd6a92caabcc5338df4593ad21f55

mais lors de l'execution du projet, je recois ceci comme erreur:


log4j:WARN No appenders could be found for logger (net.sf.hibernate.cfg.Environment).

log4j:WARN Please initialize the log4j system properly.

Exception in thread "main" java.lang.ExceptionInInitializerError

at Test.main(Test.java:8)

Caused by: java.lang.RuntimeException: Problème de configuration : Error reading resource: Compte.hbm

at com.minosis.hibernate.HibernateUtil.<clinit>(HibernateUtil.java:14)

... 1 more

Caused by: net.sf.hibernate.MappingException: Error reading resource: Compte.hbm

at net.sf.hibernate.cfg.Configuration.addResource(Configuration.java:340)

at net.sf.hibernate.cfg.Configuration.doConfigure(Configuration.java:1027)

at net.sf.hibernate.cfg.Configuration.doConfigure(Configuration.java:983)

at net.sf.hibernate.cfg.Configuration.configure(Configuration.java:911)

at net.sf.hibernate.cfg.Configuration.configure(Configuration.java:897)

at com.minosis.hibernate.HibernateUtil.<clinit>(HibernateUtil.java:11)

... 1 more

Caused by: net.sf.hibernate.MappingException: invalid mapping

at net.sf.hibernate.cfg.Configuration.addInputStream(Configuration.java:288)

at net.sf.hibernate.cfg.Configuration.addResource(Configuration.java:337)

... 6 more

Caused by: org.xml.sax.SAXParseException: The content of element type "class" must match "(meta*,(cache|jcs-cache)?,(id|composite-id),discriminator?,(version|timestamp)?,(property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|idbag|array|primitive-array)*,(subclass*|joined-subclass*))".

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.dtd.XMLDTDValidator.handleEndElement(Unknown Source)

at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.endElement(Unknown Source)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.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 net.sf.hibernate.cfg.Configuration.addInputStream(Configuration.java:287)

... 7 more

Veuillez m'aidez svp

3 réponses

espaceinfo Messages postés 237 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 12 juin 2010 24
10 mai 2008 à 21:11
bonjour, assure toi que tu as JDK et JRE
0
oui, oui, j'en suis sur, j'avais meme essayé un helloWorld avec jsf!
0
espaceinfo Messages postés 237 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 12 juin 2010 24
10 mai 2008 à 21:21
j'essaye de chercher.. parceque ces messages j'ai jamais rencontré!
0
ok, dsl pour dérangement
0
bjr encore une fois,
boon, j'avais un Compte.hbm du genre:



<?xml version="1.0"?>

<!DOCTYPE hibernate-mapping PUBLIC

"-//Hibernate/Hibernate Mapping DTD//EN"

"http://hibernate.org/dtd/hibernate-mapping-2.0.dtd" >


<hibernate-mapping package="com.minosis.hibernate">

<class name="Compte" table="COMPTE">

<property

column="LOGIN_COMPTE"

length="20"

name="LoginCompte"

not-null="false"

type="string"

/>

<property

column="ID_COMPTE"

length="6"

name="IdCompte"

not-null="false"

type="integer"

/>

<property

column="PROFIL_COMPTE"

length="20"

name="ProfilCompte"

not-null="false"

type="string"

/>

<property

column="PASSWORD_COMPTE"

length="10"

name="PasswordCompte"

not-null="false"

type="string"

/>

</class>

</hibernate-mapping>


je l'ai corrigé de cette facon:




<?xml version="1.0"?>

<!DOCTYPE hibernate-mapping PUBLIC

"-//Hibernate/Hibernate Mapping DTD//EN"

"http://hibernate.org/dtd/hibernate-mapping-2.0.dtd" >


<hibernate-mapping>

<class name="com.houda.Compte" table="COMPTE">


<id name="IdCompte" type="integer">

<column name="ID_COMPTE" length="6"/>

<generator class="increment"/>

</id>



<property name="LoginCompte" type="string">

<column name="LOGIN_COMPTE" length="20" not-null="false"/>

</property>


<property name="ProfilCompte" type="string">

<column name="PROFIL_COMPTE" length="20" not-null="false"/>

</property>


<property name="PasswordCompte" type="string">

<column name="PASSWORD_COMPTE" length="10" not-null="false"/>

</property>


</class>

</hibernate-mapping>

mé j'ai encore des erreurs:



0 [main] INFO net.sf.hibernate.cfg.Environment - Hibernate 2.1.8

0 [main] INFO net.sf.hibernate.cfg.Environment - hibernate.properties not found

0 [main] INFO net.sf.hibernate.cfg.Environment - using CGLIB reflection optimizer

0 [main] INFO net.sf.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling

0 [main] INFO net.sf.hibernate.cfg.Configuration - configuring from resource: /hibernate.cfg.xml

0 [main] INFO net.sf.hibernate.cfg.Configuration - Configuration resource: /hibernate.cfg.xml

78 [main] DEBUG net.sf.hibernate.util.DTDEntityResolver - trying to locate http://hibernate.org/dtd/hibernate-configuration-2.0.dtd in classpath under net/sf/hibernate/

78 [main] DEBUG net.sf.hibernate.util.DTDEntityResolver - found http://hibernate.org/dtd/hibernate-configuration-2.0.dtd in classpath

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - hibernate.connection.url=jdbc:oracle:thin:@localhost:1521:safaqat

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - hibernate.connection.driver_class=oracle.jdbc.OracleDriver

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - hibernate.connection.username=scott

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - hibernate.connection.password=tiger

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - dialect=net.sf.hibernate.dialect.OracleDialect

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - hibernate.show_sql=false

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - hibernate.use_outer_join=true

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - hibernate.transaction.factory_class=net.sf.hibernate.transaction.JDBCTransactionFactory

110 [main] DEBUG net.sf.hibernate.cfg.Configuration - null<-org.dom4j.tree.DefaultAttribute@89cf1e [Attribute: name resource value "Compte.hbm"]

110 [main] INFO net.sf.hibernate.cfg.Configuration - Mapping resource: Compte.hbm

110 [main] DEBUG net.sf.hibernate.util.DTDEntityResolver - trying to locate http://hibernate.org/dtd/hibernate-mapping-2.0.dtd in classpath under net/sf/hibernate/

110 [main] DEBUG net.sf.hibernate.util.DTDEntityResolver - found http://hibernate.org/dtd/hibernate-mapping-2.0.dtd in classpath

172 [main] INFO net.sf.hibernate.cfg.Binder - Mapping class: com.houda.Compte -> COMPTE

219 [main] DEBUG net.sf.hibernate.cfg.Binder - Mapped property: IdCompte -> ID_COMPTE, type: integer

219 [main] DEBUG net.sf.hibernate.cfg.Binder - Mapped property: LoginCompte -> LOGIN_COMPTE, type: string

219 [main] DEBUG net.sf.hibernate.cfg.Binder - Mapped property: ProfilCompte -> PROFIL_COMPTE, type: string

219 [main] DEBUG net.sf.hibernate.cfg.Binder - Mapped property: PasswordCompte -> PASSWORD_COMPTE, type: string

219 [main] INFO net.sf.hibernate.cfg.Configuration - Configured SessionFactory: null

.......
...

219 [main] INFO net.sf.hibernate.cfg.Configuration - processing one-to-many association mappings

219 [main] INFO net.sf.hibernate.cfg.Configuration - processing one-to-one association property references

219 [main] INFO net.sf.hibernate.cfg.Configuration - processing foreign key constraints

235 [main] INFO net.sf.hibernate.dialect.Dialect - Using dialect: net.sf.hibernate.dialect.OracleDialect

250 [main] DEBUG net.sf.hibernate.exception.SQLExceptionConverterFactory - Using dialect defined converter

250 [main] INFO net.sf.hibernate.cfg.SettingsFactory - Use outer join fetching: true

250 [main] INFO net.sf.hibernate.connection.DriverManagerConnectionProvider - Using Hibernate built-in connection pool (not for production use!)

250 [main] INFO net.sf.hibernate.connection.DriverManagerConnectionProvider - Hibernate connection pool size: 20

266 [main] INFO net.sf.hibernate.connection.DriverManagerConnectionProvider - using driver: oracle.jdbc.OracleDriver at URL: jdbc:oracle:thin:@localhost:1521:safaqat

266 [main] INFO net.sf.hibernate.connection.DriverManagerConnectionProvider - connection properties: {user=scott, password=tiger}

266 [main] INFO net.sf.hibernate.transaction.TransactionFactoryFactory - Transaction strategy: net.sf.hibernate.transaction.JDBCTransactionFactory

266 [main] INFO net.sf.hibernate.transaction.TransactionManagerLookupFactory - No TransactionManagerLookup configured (in JTA environment, use of process level read-write cache is not recommended)

266 [main] DEBUG net.sf.hibernate.connection.DriverManagerConnectionProvider - total checked-out connections: 0

266 [main] DEBUG net.sf.hibernate.connection.DriverManagerConnectionProvider - opening new JDBC connection

750 [main] DEBUG net.sf.hibernate.connection.DriverManagerConnectionProvider - created connection to: jdbc:oracle:thin:@localhost:1521:safaqat, Isolation Level: 2

766 [main] DEBUG net.sf.hibernate.connection.DriverManagerConnectionProvider - returning connection to pool, pool size: 1

766 [main] INFO net.sf.hibernate.cfg.SettingsFactory - Use scrollable result sets: true

766 [main] INFO net.sf.hibernate.cfg.SettingsFactory - Use JDBC3 getGeneratedKeys(): false

766 [main] INFO net.sf.hibernate.cfg.SettingsFactory - Optimize cache for minimal puts: false

766 [main] INFO net.sf.hibernate.cfg.SettingsFactory - Query language substitutions: {}

766 [main] INFO net.sf.hibernate.cfg.SettingsFactory - cache provider: net.sf.hibernate.cache.EhCacheProvider

766 [main] DEBUG net.sf.hibernate.cfg.SettingsFactory - Wrap result sets enabled? : false

766 [main] INFO net.sf.hibernate.cfg.Configuration - instantiating and configuring caches

766 [main] DEBUG net.sf.ehcache.CacheManager - Creating new CacheManager with default config

766 [main] DEBUG net.sf.ehcache.CacheManager - Configuring ehcache from classpath.

781 [main] WARN net.sf.ehcache.config.ConfigurationFactory - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/F:/Modules%20etudies/Master%20QL/2eme%20annee/S4%20---stage/SIS/Developpement/Eclipse%20Workspace/hib/WebContent/WEB-INF/lib/ehcache-1.2.3.jar!/ehcache-failsafe.xml

781 [main] DEBUG net.sf.ehcache.config.ConfigurationFactory - Configuring ehcache from URL: jar:file:/F:/Modules%20etudies/Master%20QL/2eme%20annee/S4%20---stage/SIS/Developpement/Eclipse%20Workspace/hib/WebContent/WEB-INF/lib/ehcache-1.2.3.jar!/ehcache-failsafe.xml

781 [main] DEBUG net.sf.ehcache.config.ConfigurationFactory - Configuring ehcache from InputStream

781 [main] DEBUG net.sf.ehcache.config.DiskStoreConfiguration - Disk Store Path: C:\DOCUME~1\dell\LOCALS~1\Temp\

797 [main] DEBUG net.sf.ehcache.config.ConfigurationHelper - No CacheManagerEventListenerFactory class specified. Skipping...

797 [main] DEBUG net.sf.ehcache.config.ConfigurationHelper - No CachePeerListenerFactoryConfiguration specified. Not configuring a CacheManagerPeerListener.

797 [main] DEBUG net.sf.ehcache.config.ConfigurationHelper - No CachePeerProviderFactoryConfiguration specified. Not configuring a CacheManagerPeerProvider.

844 [main] DEBUG net.sf.ehcache.config.ConfigurationHelper - No BootstrapCacheLoaderFactory class specified. Skipping...

Exception in thread "main" java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V

at net.sf.cglib.core.DebuggingClassWriter.<init>(DebuggingClassWriter.java:47)

at net.sf.cglib.core.DefaultGeneratorStrategy.getClassWriter(DefaultGeneratorStrategy.java:30)

at net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:24)

at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:215)

at net.sf.cglib.core.KeyFactory$Generator.create(KeyFactory.java:145)

at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:117)

at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:108)

at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:104)

at net.sf.hibernate.impl.SessionFactoryImpl.<clinit>(SessionFactoryImpl.java:237)

at net.sf.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:805)

at com.houda.HibernateUtil.<clinit>(HibernateUtil.java:12)

at Test.main(Test.java:11)
0
l'insertion et l'update marchent tres bien, par contre la lecture non:




import java.util.*;

import net.sf.hibernate.*;

import com.minosis.hibernate.*;


public class Test {
public static void main(String[] args) throws HibernateException {
org.apache.log4j.BasicConfigurator.configure();



//insertion dans la table COMPTE
/*Session session = HibernateUtil.currentSession();
Transaction tx = session.beginTransaction();
Compte compte = new Compte();
compte.setIdCompte(new Integer(44));
compte.setLoginCompte("Dupont");
compte.setPasswordCompte("Jean");
session.save(compte);
tx.commit();
HibernateUtil.closeSession();*/

//update du profil du compte num 3
/*Session session = HibernateUtil.currentSession();
Transaction tx = session.beginTransaction();
Compte compte =(Compte) session.load(Compte.class, new Integer(3));
compte.setProfilCompte("Jacques");
session.save(compte);
tx.commit();
HibernateUtil.closeSession();
*/


//lecture a partir de la table compte
try {
Session session = HibernateUtil.currentSession();

List list = session.find("from COMPTE ");
Iterator it = list.iterator();

while(it.hasNext())
{
Compte compte = (Compte)it.next();
System.out.println(compte.getLoginCompte());
}

HibernateUtil.closeSession();
} catch (HibernateException e) {
e.printStackTrace();
}
}
}
0
lucky82 > lucky82
11 mai 2008 à 14:32
En fait:

il fallait mettre


List list = session.find("from Compte ");
au lieu de
List list = session.find("from COMPTE");

Merci pour vous tous
0