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

JPA Java Discussion :

jpa hibernate eclipse 3.2.2


Sujet :

JPA Java

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 5
    Par défaut
    salut :

    Je viens de commencer avec le tutoriels de serge tahé "Persistence java 5";
    mais que j'ai essaié d'éxecuter le premier test InitDB.java ;je trouve l'erreur suivante :

    Exception in thread "main" java.lang.ExceptionInInitializerError
    at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:119)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:51)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:33)
    at tests.InitDB.main(Unknown Source)
    Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException) (Caused by org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException))
    at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
    at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
    at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
    at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
    at org.hibernate.ejb.Ejb3Configuration.<clinit>(Ejb3Configuration.java:102)
    ... 4 more
    Caused by: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException)
    at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:397)
    at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
    ... 8 more
    Caused by: java.lang.NullPointerException
    at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:374)
    ... 9 more

    je comprend pas ,svp j'ai de votre reponse;

    Merci d'avance

    voila mon fichier persistence.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
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence">
    	<persistence-unit name="jpa" transaction-type="RESOURCE_LOCAL">
    		<!--  provider -->
    		<provider>org.hibernate.ejb.HibernatePersistence</provider>
    		<properties>
    			<!-- Classes persistantes -->
    			<property name="hibernate.archive.autodetection" value="class, hbm" />
    			<!-- logs SQL
    				<property name="hibernate.show_sql" value="true"/>
    				<property name="hibernate.format_sql" value="true"/>
    				<property name="use_sql_comments" value="true"/>
    			-->
    			<!-- connexion JDBC -->
    			<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />
    			<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/jpa" />
    			<property name="hibernate.connection.username" value="jpa" />
    			<property name="hibernate.connection.password" value="jpa" />
    			<!--  création automatique du schéma -->
    			<property name="hibernate.hbm2ddl.auto" value="create" />
    			<!-- Dialecte -->
    			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
    			<!--  propriétés DataSource c3p0 -->
    			<property name="hibernate.c3p0.min_size" value="5" />
    			<property name="hibernate.c3p0.max_size" value="20" />
    			<property name="hibernate.c3p0.timeout" value="300" />
    			<property name="hibernate.c3p0.max_statements" value="50" />
    			<property name="hibernate.c3p0.idle_test_period" value="3000" />
    		</properties>
    	</persistence-unit>
    </persistence>

  2. #2
    Expert confirmé
    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
    Par défaut
    Bonjour.
    A ce qu'il parait, apache-commons-logging est à cause de ce problème. Ce que je ne comprends pas, c'est le NullPointerException ... peut être un problème de configuration de commons-logging ? Tu peux nous le montrer s'il te plaît ?

  3. #3
    Membre à l'essai
    Inscrit en
    Août 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 5
    Par défaut Ajout de la balise [Code]. Merci d'y penser.
    Merci ,

    mais j'ai pas aucune modification du fichier que vous avez demandé "commons-logging".si je doit faire une configuration je sais pas comment?

    pour vous donné une idée sur le projet, j'ai un projet java,j'ai crée une classe Personne ("@Entity"), et j'ai un fichier persistence.xml décrit ci-dessus, et une clase InitDB.java,:

    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
    package tests;
     
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
     
    import javax.persistence.EntityManager;
    import javax.persistence.EntityManagerFactory;
    import javax.persistence.EntityTransaction;
    import javax.persistence.Persistence;
     
    import entites.Personne;
     
    public class InitDB {
    	// constantes
    	private final static String TABLE_NAME = "jpa01_personne";
     
    	public static void main(String[] args) throws ParseException {
     
    		// récupérer un EntityManagerFactory à  partir de l'unité de persistance
    		EntityManagerFactory emf = Persistence.createEntityManagerFactory("jpa");
    		// récupérer un EntityManager à  partir de l'EntityManagerFactory
    		EntityManager em = emf.createEntityManager();
    		// début transaction
    		EntityTransaction tx = em.getTransaction();
    		tx.begin();
    		// supprimer les éléments de la table PERSONNE
    		em.createNativeQuery("delete from " + TABLE_NAME).executeUpdate();
    		// mettre des éléments dans la table PERSONNE
    		Personne p1 = new Personne("Martin", "Paul", new SimpleDateFormat("dd/MM/yy").parse("31/01/2000"), true, 2);
    		Personne p2 = new Personne("Durant", "Sylvie", new SimpleDateFormat("dd/MM/yy").parse("05/07/2001"), false, 0);
    		// persistance des personnes
    		em.persist(p1);
    		em.persist(p2);
    		// affichage personnes
    		System.out.println("[personnes]");
    		for (Object p : em.createQuery("select p from Personne p order by p.nom asc").getResultList()) {
    			System.out.println(p);
    		}
    		// fin transaction
    		tx.commit();
    		// fin EntityManager
    		em.close();
    		// fin EntityManagerFactory
    		emf.close();
    		// log
    		System.out.println("terminé ...");
    	}
    }

    sachant que le persistence-unit du nom jpa est définit dans le fichier persistence.xml

    Merci d'avance,

    Cordialement ,

    Y.H

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 25
    Par défaut
    J'imagine que l'erreur à lieu sur la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    EntityManagerFactory emf = Persistence.createEntityManagerFactory("jpa");
    A priori, le fichier persistence.xml et le initDB sont en phase et correspondent à l'utilisation qui en est faite (lancement depuis une application Standalone).

    Le fichier persistence.xml est-il bien dans le répertoire META-INF présent à la racine du classpath (au même niveau que le répertoire test qui doit contenir la classe InitDB.class) ?

    Cela vérifié, la configuration JPA me parait bonne, il reste le problème du logging mais l'erreur me surprend (je ne pensais pas qu'HIbernate s'arrête pour une erreur de configuration sur le log). Les Jar de commons-logging sont-ils bien accessibles et le lancement du test les prend-il bien en compte ?

  5. #5
    Membre éclairé Avatar de sofien
    Inscrit en
    Février 2005
    Messages
    325
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Février 2005
    Messages : 325
    Par défaut
    Bonjour lamnaourS, est ce que le script ant-hibernate.xml a marché correctement?cad il t'a générer un fichier shema.sql de taille > 0 ? car si t'es arrivé au fichier initDB alors oui et moi je suis déja bloqué au stade du script

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 23
    Par défaut
    Salut

    Sofien j'avais le même problème que toi au moment de génère la bd le script ant ne s'exécute pas. pour résoudre mon problème j'ai décompressé le fichier .rar sur la racine de mon disque. ex:"C:\exo_jpa" en tout cas arrange toi pour ne pas qu'il n'ya d'espace dans le chemin de l'application. et décoche le case à cocher "importer le projet dans le Workspace" lors de l'importation du projet dans eclipse.

Discussions similaires

  1. Réponses: 6
    Dernier message: 13/07/2012, 22h02
  2. Hibernate et JPA avec eclipse et netbeans
    Par siempre dans le forum Persistance des données
    Réponses: 1
    Dernier message: 02/12/2009, 10h21
  3. Réponses: 0
    Dernier message: 25/08/2009, 15h32
  4. Configuration Eclipse JBoss JPA/hibernate
    Par pruderic dans le forum JPA
    Réponses: 2
    Dernier message: 13/08/2008, 09h34
  5. [Plugin][Hibernate]Eclipse avec hibernate(synchronizer)
    Par mg67 dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 23/06/2005, 17h19

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