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

Wildfly/JBoss Java Discussion :

comment utiliser fetch.lazy ?


Sujet :

Wildfly/JBoss Java

  1. #1
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Points : 44
    Points
    44
    Par défaut comment utiliser fetch.lazy ?
    bonjour,

    bref, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ....
     @ManyToOne(fetch = FetchType.LAZY)
     
        @JoinColumn(name="Num1",referencedColumnName="Num2",insertable=false,updatable=false)
        private table1 tab;
    ...
    j'ai eu comme erreur :

    org.apache.jasper.JasperException: javax.faces.el.EvaluationException: Error getting property 'etape' from bean of type model.DevTListetapcreation_$$_javassist_8: org.hibernate.LazyInitializationException: could not initialize proxy - no Session
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:512)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:395)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    j'ai compris qu'il n'y a pas de session ?

    comment résoudre ça?

    merci

  2. #2
    Membre éclairé Avatar de XmasRock
    Inscrit en
    Janvier 2007
    Messages
    729
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 729
    Points : 821
    Points
    821
    Par défaut
    Tu es sûr d'avoir une session hibernate valide lorsque ton code s'execute ?

  3. #3
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Points : 44
    Points
    44
    Par défaut
    bonjour,

    reelemenet je n'ai pas utilisé hibernate, j'ai utilisé EJB3 (JPA).

    la question qui se pouse est comment utiliser le fetch.lazy sans utiliser hibernate dans jboss?


    merci

  4. #4
    Membre éclairé Avatar de XmasRock
    Inscrit en
    Janvier 2007
    Messages
    729
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 729
    Points : 821
    Points
    821
    Par défaut
    reelemenet je n'ai pas utilisé hibernate, j'ai utilisé EJB3 (JPA).
    ok

    la question qui se pouse est comment utiliser le fetch.lazy sans utiliser hibernate dans jboss?
    non, hibernate est l'implémentation sous-jacente de l'API standard.

    Si tu utilise fetch.lazy et que ta session est terminée alors que tu accède à l'attribut en question (Num1 dans ton exemple), le processus qui va tenter de récupérer la valeur va se planter. Ton erreur doit signifier que ton ejb est détaché au moment où tu accèdes à Num1.

  5. #5
    Membre éclairé Avatar de XmasRock
    Inscrit en
    Janvier 2007
    Messages
    729
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 729
    Points : 821
    Points
    821
    Par défaut
    Par ailleurs, dans ta situation "ManyToOne" la strategie par defaut (eager) me semble plutôt être le meilleurs choix dans ce sens de l'association non ?

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/02/2009, 12h06
  2. comment utiliser fetch?
    Par mbouzouita dans le forum Wildfly/JBoss
    Réponses: 8
    Dernier message: 15/06/2007, 17h04
  3. comment utiliser actionscript ?
    Par webs dans le forum Flash
    Réponses: 3
    Dernier message: 09/02/2003, 23h11
  4. Comment utiliser OUT ?
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 3
    Dernier message: 20/07/2002, 09h35
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

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