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 :

A quoi sert les managed bean ?


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    176
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 176
    Par défaut A quoi sert les managed bean ?
    Bonjour,

    Je suis en train de developer une application web en utilisant Spring MVC et JSF. Seulement voilà, j’ai développé en suivant les tuto de Serge Tahé pour l’implémentation des différentes classes, à savoir :

    - une classe Controler qui correspond à une action particulière
    - une classe Validator qui correspond à la validité des champs saisies sur le formulaire
    - une classe entité qui correspond au bean

    Mais l’utilisation des managed bean me porte à confusion car si j’ai bien compris, j’ai un context Spring et un context JSF qui ne communique pas par défaut. Et je pense qu’il faut ajouter un variable-resolver dans le faces-config.xml Mais je ne comprend pas pouquoi on a un managed bean tout en sachant que Spring dispose déjà d’un bean…

    Mon souhait est lorsque l’utilisateur saisit les champs du formulaire, cela passe par les controleurs, validators et retourne le modelAndView associé…

    Pouvez vous m’éclairer sur ce point car je n’ai pas trouvé de docs explicite ?

    Merci

  2. #2
    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
    Bonjour,

    Pour utiliser Spring comme "résolveur de variables", tu peux jeter un oeil ici.
    Dans cette configuration, JSF demandera à Spring de lui fournir les beans utilisés dans tes pages JSF.
    Le managed bean est une classe définie au sein de JSF (via le faces-config.xml) qui va servir à faire le lien entre tes pages JSF (JSP ou XHTML) et le code Java, en utilisant les expressions EL (les trucs du genre #{...}).

    Spring n'est pas une librairie à utiliser obligatoirement pour les applications JSF. Si tu l'utilises, alors effectivement, par défaut, tu as 2 contextes distincts, celui de JSF et celui de Spring. L'entrée de la FAQ Spring que j'ai mise au début te permet de lier les deux.

    Est-ce plus clair maintenant ?
    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

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    176
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 176
    Par défaut
    Effectivement, dés lors que l’on installer JSF par-dessus Spring MVC, on a les contrôleurs qui sont encapsulés dans les managed bean :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <managed-bean>
    	<managed-bean-name>personCtrl</managed-bean-name>
    	<managed-bean-class>control.PersonCtrl</managed-bean-class>
    	<managed-bean-scope>session</managed-bean-scope>
    </managed-bean>

    Et pour les Validators, on a les validators JSF :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <validator>		
    	<validator-id>personValidator</validator-id>
    	<validator-class>validators.PersonValidator</validator-class>
    </validator>

    Donc, si je pars de ce principe, je n’ai plus besoin de maj les controler et les validators dans mon application-servlet.xml puisque je gère tout à partir de mon contexte JSF ?

    Mais alors quelle est l’utilité d’avoir installé Spring MVC avec JSF si ce n’est que l’on « casse » le principe même de Spring ? Les controleurs et les validateurs ne sont plus les mêmes, on a deux contextes différents…

    Et quel est la bonne pratique lorsque l’on utilise Spring MVC avec JSF ? utilise t-on toujours le contexte Spring plutôt que celui de JSF ?

    Merci

Discussions similaires

  1. JAAS et les managed bean
    Par riadhhwajdii dans le forum Général Java
    Réponses: 3
    Dernier message: 02/10/2009, 12h09
  2. A quoi sert les procédures stockées ?
    Par JediMaster dans le forum Linq
    Réponses: 4
    Dernier message: 18/05/2009, 21h14
  3. icefaces et les managed bean
    Par *alexandre* dans le forum JSF
    Réponses: 2
    Dernier message: 15/09/2008, 08h04
  4. A quoi sert les " ! " en php
    Par biker63 dans le forum Langage
    Réponses: 7
    Dernier message: 16/04/2007, 17h49
  5. Réponses: 8
    Dernier message: 15/02/2007, 13h24

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