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 :

Problème avec une session


Sujet :

Hibernate Java

  1. #1
    Membre actif Avatar de ploxien
    Inscrit en
    Février 2006
    Messages
    467
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2006
    Messages : 467
    Points : 221
    Points
    221
    Par défaut Problème avec une session
    Hello,

    Je n'arrive pas à utiliser mon fichier HibernateUtil que voici:
    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
    public class HibernateUtil {
        private static final SessionFactory sessionFactory;
        private static final Configuration cfg = new Configuration();
        public static final ThreadLocal session = new ThreadLocal(); 
        static {
            try {
                AnnotationConfiguration annCfg = new AnnotationConfiguration(); 
                sessionFactory = annCfg.configure().buildSessionFactory();
            } catch (Throwable ex) {
                System.err.println("Initial SessionFactory creation failed." + ex);
                throw new ExceptionInInitializerError(ex);
            }
        }
     
        public static Session currentSession() {
            Session s = (Session) session.get();
            // Open a new Session, if this Thread has none yet
            if (s == null) {
                s = sessionFactory.openSession();
                session.set(s);
            }
            return s;
        }
     
        public static void closeSession() {
            Session s = (Session) session.get();
            if (s != null)
                s.close();
            session.set(null);
        } 
    }
    Si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Session session = HibernateUtil.currentSession();
    Il me met l'erreur suivante:
    Initial SessionFactory creation failed.java.lang.NoClassDefFoundError: javax/persistence/EmbeddableSuperclass
    Exception in thread "Thread-2" java.lang.ExceptionInInitializerError
    at ch.iict.iscia.eascia.persistance.HibernateUtil.<clinit>(HibernateUtil.java:67)
    at ch.iict.iscia.eascia.recup.FileSystemAccount.run(FileSystemAccount.java:89)
    Caused by: java.lang.NoClassDefFoundError: javax/persistence/EmbeddableSuperclass
    at org.hibernate.cfg.AnnotationConfiguration.addEmbeddedSuperclasses(AnnotationConfiguration.java:253)
    at org.hibernate.cfg.AnnotationConfiguration.addImplicitEmbeddedSuperClasses(AnnotationConfiguration.java:243)
    at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:183)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1138)
    at ch.iict.iscia.eascia.persistance.HibernateUtil.<clinit>(HibernateUtil.java:59)
    ... 1 more
    Caused by: java.lang.ClassNotFoundException: javax.persistence.EmbeddableSuperclass
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    ... 6 more
    Je ne vois pas ce qui est faux... Une idée?

    Merci d'avance!

    A+

  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
    Salut,
    Tu as bien javax.persistence dans le classpath ? (il est distribué avec Hibernate dans le jar ejb3-persistence.jar)

  3. #3
    Membre actif Avatar de ploxien
    Inscrit en
    Février 2006
    Messages
    467
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2006
    Messages : 467
    Points : 221
    Points
    221
    Par défaut
    J'utilise maven

    J'ai ce package dans mes dépendances, et à première vue ça ne change rien.

  4. #4
    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
    Dans mon pom Maven j'utilise cette dépendance :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    		<dependency>
    			<groupId>javax.persistence</groupId>
    			<artifactId>persistence-api</artifactId>
    			<version>1.0</version>
    			<scope>provided</scope>
    		</dependency>
    et effectivement l'annotation @EmbeddableSuperClass n'est pas définit, il n'y a que @Embeddable.

    @EmbeddableSuperClass est bien définit dans l'API, mais elle n'est peut-être pas dans tout les implémentation.

  5. #5
    Membre à l'essai
    Inscrit en
    Décembre 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 29
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par spidetra Voir le message
    Dans mon pom Maven j'utilise cette dépendance :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    		<dependency>
    			<groupId>javax.persistence</groupId>
    			<artifactId>persistence-api</artifactId>
    			<version>1.0</version>
    			<scope>provided</scope>
    		</dependency>
    et effectivement l'annotation @EmbeddableSuperClass n'est pas définit, il n'y a que @Embeddable.

    @EmbeddableSuperClass est bien définit dans l'API, mais elle n'est peut-être pas dans tout les implémentation.
    Bonjour,
    j'ai déployé mon application Hibernate sur oracle Application Server,
    et quand je lance l'application, le serveur me gratifie avec le message suivant:

    500 Internal Server Error
    java.lang.NullPointerException at ma.rami.util.HibernateUtil.getCurrentSession()Lorg.hibernate.Session;(HibernateUtil.java:59) at ma.rami.controller.ConnexionAction.execute(Lorg.apache.struts.action.ActionMapping;Lorg.apache.struts.action.ActionForm;Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponseLorg.apache.struts.action.ActionForward;(ConnexionAction.java:50) at org.apache.struts.action.RequestProcessor.processActionPerform(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;Lorg.apache.struts.action.Action;Lorg.apache.struts.action.ActionForm;Lorg.apache.struts.action.ActionMappingLorg.apache.struts.action.ActionForward;(RequestProcessor.java:484) at org.apache.struts.action.RequestProcessor.process(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponseV(RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponseV(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doPost(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponseV(ActionServlet.java:525) at javax.servlet.http.HttpServlet.service(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponseV(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponseV(HttpServlet.java:853) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponseV(ServletRequestDispatcher.java:824) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(Ljavax.servlet.ServletRequest;Ljavax.servlet.http.HttpServletResponseV(ServletRequestDispatcher.java:330) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.processRequest(Lcom.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.ApplicationServerThread;Lcom.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.EvermindHttpServletRequest;Lcom.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.EvermindHttpServletResponse;Ljava.io.InputStream;Ljava.io.OutputStream;Z)Z(HttpRequestHandler.java:830) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.AJPRequestHandler.run(Ljava.lang.ThreadV(AJPRequestHandler.java:224) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.AJPRequestHandler.run()V(AJPRequestHandler.java:133) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].util.ReleasableResourcePooledExecutor$MyWorker.run()V(ReleasableResourcePooledExecutor.java:186) at java.lang.Thread.run()V(Unknown Source) at java.lang.Thread.startThreadFromVM(Ljava.lang.ThreadV(Unknown Source)
    merci de me répondre ou de rediriger mon message dans le bon forum.

Discussions similaires

  1. [PERL] problème avec une variable de session PHP
    Par ingeston dans le forum Modules
    Réponses: 1
    Dernier message: 18/04/2012, 16h32
  2. problème avec une session
    Par ferhat.adel dans le forum Langage
    Réponses: 2
    Dernier message: 12/03/2011, 01h17
  3. [PHP 5.0] Problème avec une variable tableau dans une session
    Par diblasio dans le forum Langage
    Réponses: 5
    Dernier message: 23/08/2010, 09h59
  4. [Session] Problème avec une session qui expire
    Par Mede12 dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 14/09/2009, 11h33
  5. Réponses: 6
    Dernier message: 04/09/2006, 15h48

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