JSF (JAVA SERVER FACES)
Notion de framework
!Les frameworks sont des structures logicielles qui définissent des
cadres dans lesquels s’insèrent les objets et concepts spécifiques à
une application.
!En pratique, un framework est un ensemble de classes et de
mécanismes associés à une architecture logicielle qui fournissent un
ou plusieurs services techniques ou métiers aux applications qui
s’appuient dessus
!Exemple : Framework MVC (Java)
!Struts
!Spring MVC
!Tapestry
!JSF (standard JEE)
Quest-ce que JSF ?
!JSF : Java Server Faces
!Framework de présentation pour les applications Web en
Java :
"librairie de composants graphiques
"fonctionnalités se basant sur ces composants
!Implémentations
!Sun – Mojarra
"https://javaserverfaces.java.net/
!Apache – MyFaces
"http://myfaces.apache.org/
!Oracle – ADF Faces
"http://www.oracle.com/technology/products/adf/adffaces/index.html
Java Server Faces
!Concept novateur :
!Suit un modèle orienté évènement
!Suit une architecture orientée composant!
!Mais aussi :
!respecte le concept MVC
!permet de générer un format autre que du HTML (XML, WML,
….),
!propose des librairies de composants graphiques,
!permet de créer ses propres composants,
!Ajax ready
Nouvelle vision
!Représentation de la page sous forme darbre des
composants, et accessible via le contexte de lapplication
MaPage
Mot de passe :
Identifiant :
Soumettre
ViewRoot
Form
InputText
InputText
CommandButton
OutputText
OutputText
Composants de l’architecture JSF
!Contrôleur (Faces Servlet) :
!Servlet principale de l'application qui sert de contrôleur.
!Toutes les requêtes de l'utilisateur passent systématiquement par elle, qui les
examine et appelle les différentes actions correspondantes.
!Fait partie du framework
!Vue: pages web (JSP, XHTML) :
!JSF peut générer plusieurs formats de réponse (comme WML pour les dispositifs
mobiles
!JSF utilise les Facelets, dans sa version la plus récente (JSF 2.0)
"Facelets est formée d'une arborescence de composants UI
!Modèle Managed Bean/Backing Bean
!Classes Java spécialisées qui synchronise les valeurs avec les composants UI,
!Accèdent à la logique métier et gèrent la navigation entre les pages.
!Faces-config.xml
!Fichier de configuration de l’application définissant les règles de navigation et
les différents managed beans utilisés
Composants de l’architecture JSF
!Moteur de rendu (Renderrer): décode la requête de l'utilisateur
pour initialiser les valeurs du composant et encode la réponse pour
créer une représentation du composant pour le client
!Convertisseurs et validateurs: permettent de valider les champs
de saisie textuelle et de les convertir vers d’autres types d’objets
Interface Homme Machine (IHM)
!Plusieurs technologies possibles pour lécriture des pages :
!JSP
!XHTML (Facelets)
!Ensemble de balises JSF constituant la page :
!Composants graphiques
!Composants de conversion
!Composants de validation
!Création des de pages avec Facelets
!Inclus dans JSF
!Modélisation avec des templates
Modèle (template)
IHM : Template de page - Facelets
!Facelets est un framework de composition de pages ou de
composants.
En-tête
Corps
Pied de page
En-tête
Pied de page
Corps
IHM : Template de page (suite…)
Inclusion de page
Inclusion de page
Insertion de page
Composants JSF
IHM : Exemple de page
Déclaration des librairies
Template de page
(Facelets)
Ressources
Lien JavaBean
IHM : Composants graphiques
IHM : Composants additionnels
!Il existe des librairies supplémentaires proposant des
composants supplémentaires.
!Compléments des composants de base,
!Menu
!Onglet
!Treeview
!Calendrier
!
ManagedBean
!C’est un JavaBean géré par JSF
!Permet de faire le lien entre lIHM et le code métier
de lapplication.
!Doit contenir des accesseurs (getters) et des mutateurs
(setters) pour champs de lIHM.
!Définition au sein du fichier faces-config.xml ou par
les annotations.
ManagedBean : exemple
Annotations de
paramétrage
Attribut relatif
au champ
de saisie de lIHM
Accesseur du
champ de saisie
Mutateur du
champ de saisie
La configuration : faces-config.xml
Fichier de ressources
par défaut
Navigation
I18N
La configuration : web.xml
Nom de lapplication
Mapping de la servlet
Page daccueil
Servlet utilisée
Extension des pages
Respect du concept M.V.C.
Réponse retournée
au client
Requête issue
du client
Controler
FacesServlet
View
Model
faces-config.xml
Convertisseurs
!Permet la conversion des données :
!IHM vers ManagedBean
!ManagedBean vers IHM.
!Exemples :
!Conversion de date
!Conversion de nombre
!Il est facile de créer son propre convertisseur.
PersonneBean
Les convertisseurs
MaPage
Prénom :
Nom :
Enregistrer
Date de naissance :
1 / 11 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !