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 :

Injection dans la session


Sujet :

JSF Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Par défaut Injection dans la session
    Bonjour,

    J'aimerai, à partir de mon code Java, injecter un bean dans la session.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     <managed-bean>
        <managed-bean-name>user</managed-bean-name>
        <managed-bean-class>be.test.project.core.businessobject.User</managed-bean-class>
        <managed-bean-scope>request</managed-bean-scope>
      </managed-bean>
    En fait, à partir de ma classe Controller, je défini l'objet User avec ses valeurs (récupérée dans la BDD) et j'aimerai l'injecter dans le bean pour "précharger" mon formulaire pour effectuer une modification.

    Je ne trouve pas comment je pourrais faire pour qu'à partir de la classe "UserListController" créer l'user et donc le renvoyer au formulaire pour qu'il précharge.

    Merci pour votre aide !!

  2. #2
    Membre Expert Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Par défaut Session
    Bonjour,

    Déjà ton user doit être session et non request. Pour garder un pointeur sur lui.
    Ensuite, il faut que de ton bean, puisses interroger le bean en question
    genre ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    User user= (User) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("User");
    user.vamechercherdupain("fraissvp");
    Tu récupère ainsi l'instance de ton user ou tu peux utliser tes méthodes.

    Communication inter Bean pour une même Session.

    olivier

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Par défaut
    Oui désolé je me suis trompé c'est session que je dois mettre.

    Okay ca c'est pour aller chercher le bean, mais pour faire le contraire?

    Je vais chercher un user dans la base de donnée, et je l'injecte dans le formulaire?

  4. #4
    Membre Expert Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Par défaut vive la belgique
    Bonjour,

    Je connais pas ton architecture mais effectivement moi j'instancie un Objet User avec un EJB qui cause avec une base de donnée.
    Je le fais dans managed bean avant construction et retour de la page.

    olivier

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    Utilise spring pour l injection ca va te simpllifier la vie

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Par défaut
    On sait injecter dans la session JSF avec Spring?

    Merci pour vos réponses

  7. #7
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Ce qu'il voulait dire, c'était d'utiliser Spring pour gérer les beans, et ne plus le faire faire par JSF lui-même.
    Du coup, tu bénéficies de la puissance de Spring dans ton application
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Par défaut
    Merci beaucoup
    Je vais tester ca de l'après midi !

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Par défaut
    Personne n'aurait un exemple simple de Spring qui gère les beans de JSF?
    Car j'ai fais qq test avec des tutos que j'ai trouvé sur le net, mais ca fonctionne pas des masses :s

  10. #10
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Déjà, jette un oeil ici...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Par défaut
    Parfait Merci ca fonctionne !

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

Discussions similaires

  1. problème d'injection (?) d'un session bean EJB3 dans une servlet
    Par toomsounet dans le forum Wildfly/JBoss
    Réponses: 2
    Dernier message: 11/03/2007, 01h26
  2. Séquence pas encore définie dans cette session
    Par hair_peace dans le forum Oracle
    Réponses: 2
    Dernier message: 03/11/2005, 17h04
  3. [Sécurité] Variables dans une session
    Par philippef dans le forum Langage
    Réponses: 6
    Dernier message: 14/10/2005, 16h30
  4. [C#] Passage d'un DateTime dans un Session
    Par julio84 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 05/04/2005, 16h22

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