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

JSF Java Discussion :

JSF, PrimeFaces, WebFlow et Hibernate => org.hibernate.SessionException : session closed!


Sujet :

JSF Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 66
    Points : 53
    Points
    53
    Par défaut JSF, PrimeFaces, WebFlow et Hibernate => org.hibernate.SessionException : session closed!
    ... voilà le quatuor gagnant!

    Mon problème est le suivant :
    j'utilise le composant autoComplete de primeFaces pour faire de l'auto-complétion sur un champ d'une page JSF. La méthode d'autocomplétion est implémenté dans un bean managé. Cette méthode vise à effectuer une recherche hibernate pour rapatrier une liste d'objets métier, via hibernate. Le hic, c'est que ma DAO n'arrive pas à récupérrer une session hibernate valide : je me tape à chaque fois une org.hibernate.SessionException.
    Le filtre déclaré dans le web.xml est le traditionnel OpenEntityManagerInViewFilter, mais je me demande s'il ne faudrait pas en déclarer un autre spécifique à JSF... Mais je n'arrive pas à trouver ce filtre (les quelques essais que j'ai pu faire, notamment celui-ci, ne résolvent pas le problème).
    Est-ce que vous avez déjà eu ce problème ? Et si oui, comment puis-je le résoudre ?

    Merci.


    pom.xml (extraits)
    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
     
    	<!-- Hibernate / JPA -->
    	<jpa-version>1.0.0.Final</jpa-version>
    	<hibernate-entitymanager-version>3.5.1-Final</hibernate-entitymanager-version>
    	<hibernate-version>3.5.1-Final</hibernate-version>
     
    	<!-- Spring -->
    	<spring-version>3.0.4.RELEASE</spring-version>
    	<spring-security-facelets-taglib-version>0.5</spring-security-facelets-taglib-version>
    	<spring-webflow-version>2.2.1.RELEASE</spring-webflow-version>
     
    	<!-- JSF / Facelets -->
    	<jsf-version>2.0.3</jsf-version>
    	<facelet-version>1.1.14</facelet-version>
     
    	<!-- JSF / Facelets -->
    	<jsf-version>2.0.3</jsf-version>
    	<facelet-version>1.1.14</facelet-version>
    web.xml (extraits)
    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
     
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
     
    	<listener>
      		<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
    	</listener>
     
    	<!-- Param for Primefaces -->	
    	<context-param>
    		<param-name>com.sun.faces.allowTextChildren</param-name>
    		<param-value>true</param-value>
    	</context-param>
     
    	<!-- OpenEntityManagerInViewFilter -->
    	<filter> 
    		<filter-name>openEntityManagerInViewFilter</filter-name>
    		<filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class>
    	</filter>
     
    	<!-- OpenEntityManagerInViewFilter -->
    	<filter-mapping>
    		<filter-name>openEntityManagerInViewFilter</filter-name>
    		<url-pattern>/*</url-pattern>
    	</filter-mapping>
     
    	<!-- Just here so the JSF implementation can initialize, *not* used at runtime -->
    	<servlet>
    		<servlet-name>Faces Servlet</servlet-name>
    		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    		<load-on-startup>1</load-on-startup>
    	</servlet>
     
    	<!-- Just here so the JSF implementation can initialize -->
    	<servlet-mapping>
    		<servlet-name>Faces Servlet</servlet-name>
    		<url-pattern>*.faces</url-pattern>
            <url-pattern>*.jsf</url-pattern>
    	</servlet-mapping>
    faces-config.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    	<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
            version="2.0">
     
        <application>
    		<message-bundle>LabelResources</message-bundle>
    		<message-bundle>ErrorResources</message-bundle>
        	 <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>
        </application>    
    </faces-config>

  2. #2
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 66
    Points : 53
    Points
    53
    Par défaut
    J'ai fini par trouver d'où venait le problème.
    Le bean managé contenant la méthode d'auto-complétion n'était pas instancié via le contexte Spring mais directement dans le flow.

    L'auto-complétion fonctionne à présent à merveille!
    Merci à ceux qui m'ont lu.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/02/2012, 14h11
  2. Réponses: 4
    Dernier message: 21/04/2011, 17h24
  3. jsf + primefaces "hibernate validator"
    Par sfair dans le forum JSF
    Réponses: 8
    Dernier message: 23/02/2011, 17h37
  4. Réponses: 5
    Dernier message: 29/09/2009, 18h56
  5. org.hibernate.hql.ast.QuerySyntaxError: unexpected token
    Par oughlad dans le forum Hibernate
    Réponses: 9
    Dernier message: 26/05/2006, 14h20

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