Cette étape sert simplement à donner un moyen plus élégant et plus ergonomique d'indiquer la personne sur laquelle on veut des informations.
L'autre but de cet exercice est de vous faire manipuler des listes déroulantes.
Une première liste permet de définir le service de la personne. C'est utile pour faciliter la désignation de la personne s'il y a un grand nombre de personnes dans l'entreprise ; ça permet aussi de voir comment on peut synchroniser 2 listes déroulantes.
La deuxième liste affiche les personnes du service choisi dans la première liste. Elle permettra d'avoir l'identificateur de la personne.
Le backing bean contient 2 nouvelles propriétés pour conserver le service choisi dans la première liste et pour renvoyer la liste des personnes du service choisi par l'utilisateur. La portée du bean est la vue à cause du fait que JSF vérifie que le choix dans la liste appartient bien à la liste des choix proposés à l'utilisateur (pour déjouer les pirates machiavéliques...). Si la portée est la vue, le service restera au moment de la vérification ; si la portée est la requête, le service est à null au moment de la vérification.
Le bean JSF façade contient les méthodes pour faire afficher tous les services et toutes les personnes d'un certain service.
Tout le code restant est identique à celui de l'étape 1.
Le code :
Page JSF avec les listes
Backing bean de portée "vue"
Bean EJB façade