JSF 2 avec Eclipse

Transcription

JSF 2 avec Eclipse
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
Applications web, servlets et JSP
1. Introduction
15
2. Rappels sur la notion d'application web
15
2.1 Éléments constitutifs d'une application
2.2 Vie d'une application
3. Les servlets
15
16
16
3.1 Présentation
3.2 Cycle de vie
3.3 Cas particulier des servlets répondant spécifiquement au protocole HTTP
4. La technologie Java Server Pages (JSP)
4.1 Une brève description du mode de fonctionnement
4.2 Les composants d'une page JSP
4.2.1 Les directives
4.2.2 Les actions
4.2.3 Les objets implicites
4.2.4 Les scripting JSP
16
17
18
18
18
19
20
21
24
25
5. Le concept MVC
26
6. Installation de l'environnement Eclipse et configuration d'une application web
27
6.1 Choix d'une implémentation JSF
6.2 Téléchargement de la bibliothèque JSTL
6.3 Installation et configuration d’Eclipse
27
28
28
Langage d'évaluation d'expressions
1. La technologie Java Server Faces
www.editions-eni.fr
33
© Editions ENI
1/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
2. Principe du langage d'évaluation d'expressions
34
3. Le cycle de vie à phases multiples d'une page JSF
35
3.1 Principe
3.2 Présentation des différentes phases
3.2.1 Phase n°1 : Restitution de la vue (Restore View)
3.2.2 Phase n°2 : Application des paramètres de requête (Apply Request Values)
3.2.3 Phase n°3 : Processus de validation (Process Validations)
3.2.4 Phase n°4 : Mise à jour du modèle (Update Model Values)
3.2.5 Phase n°5 : Appel de l'application (Invoke Application)
3.2.6 Phase n°6 : Restitution de la réponse (Render Response)
4. Deux types d'évaluation d'expressions
35
36
36
37
38
38
38
38
39
4.1 Évaluation instantanée d'une expression
4.2 Évaluation différée d'une expression
39
41
5. Utilisation d'expressions pour accéder aux propriétés d'un objet
42
6. Utilisation d'expressions pour accéder aux méthodes d'un objet
44
7. Expressions avec opérateurs
46
Les bibliothèques de balises JSF
1. Principaux éléments de la bibliothèque HTML
1.1 Principaux attributs communs aux balises de la bibliothèque HTML
1.2 Présentation des balises et de leurs principaux attributs spécifiques
1.2.1 Balise column
1.2.2 Balise commandButton
1.2.3 Balise form
1.2.4 Balise inputHidden
1.2.5 Balise inputSecret
www.editions-eni.fr
© Editions ENI
49
49
50
50
50
51
51
53
2/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
1.2.6 Balise inputText
1.2.7 Balise inputTextArea
1.2.8 Balise message
1.2.9 Balise messages
1.2.10 Balise outputLink
1.2.11 Balise outputText
1.2.12 Balise panelGrid
1.2.13 Balise selectBooleanCheckbox
1.2.14 Balise selectManyCheckbox
1.2.15 Balise selectOneListbox
1.2.16 Balise selectManyListbox
1.2.17 Balise selectOneMenu
1.2.18 Balise selectManyMenu
1.2.19 Balise selectOneRadio
2. Principaux éléments de la bibliothèque Core
2.1 Balise actionListener
2.2 Balise convertDateTime
2.2.1 Attribut dateStyle
2.2.2 Attribut pattern
2.2.3 Attribut timeStyle
2.2.4 Attribut type
2.3 Balise convertNumber
2.3.1 Attribut pattern
2.3.2 Attribut type
2.4 Balise converter
2.5 Balise loadBundle
2.5.1 Attribut baseName
2.5.2 Attribut var
2.6 Balise selectItem
2.6.1 Attribut itemDisabled
2.6.2 Attribut itemLabel
2.6.3 Attribut itemValue
2.7 Balise selectItems
2.8 Balise validateDoubleRange
2.9 Balise validateLength
www.editions-eni.fr
53
53
54
54
54
55
55
56
56
58
58
59
60
60
60
60
61
61
61
61
62
62
62
62
62
63
63
63
63
64
64
64
64
64
65
© Editions ENI
3/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
2.10 Balise validateLongRange
2.11 Balise validator
2.12 Balise valueChangeListener
2.13 Balise view
2.13.1 Attribut before Phase
2.13.2 Attribut AfterPhase
65
66
66
67
67
67
3. Diagramme de classes relatif aux composants standards JSF
68
Composition d'une application JSF
1. Introduction
69
2. Description de l'application JSF à développer
69
3. Architecture et fichiers de configuration
72
3.1 Architecture d'une application JSF
3.2 Fichiers de configuration des ressources d'une application JSF
3.2.1 Localisation du/des fichier(s) de configuration des ressources
3.2.2 Mode d'exploitation
3.2.3 Types de ressources configurables
4. Étapes à respecter pour la création d'une application JSF
4.1 Création d'une instance de la FacesServlet
4.2 Création des pages web
4.2.1 Déclaration des bibliothèques de balises Java Server Faces
4.2.2 Positionnement des balises view et form
4.2.3 Ajout de composants graphiques dans une page web
5. Les composants graphiques
85
85
87
87
88
88
92
5.1 Classes correspondant aux composants graphiques
5.2 Interfaces mises en œuvre par les composants graphiques
www.editions-eni.fr
72
74
74
75
77
© Editions ENI
93
99
4/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
6. La gestion du rendu : notion de renderer
6.1 Intérêt de la gestion du rendu
6.2 Kit de rendu - Classes de rendu
6.3 Bibliothèque de balises pour le rendu des composants
7. Validation de données
101
101
102
102
107
7.1 Principe de fonctionnement de la validation
7.2 Différents types de validateurs
7.3 Exemple d'utilisation d'un validateur
8. Conversions de données
107
108
108
109
8.1 Pourquoi parler de conversion de données ?
8.2 Conversions implicites et spécifiques
8.3 Convertisseurs standards et convertisseurs personnalisés
8.4 Exemple d'utilisation d'un convertisseur
9. Gestion des événements
109
110
111
112
113
9.1 Principes mis en œuvre dans la gestion événementielle avec JSF
9.2 Deux types d'événements exploitables
9.3 Rôle de la propriété "immediate" des composants générateurs d'événements
9.4 Réaction aux événements
10. Utilisation de messages
113
114
114
115
115
10.1 Génération des messages d'erreur issus des processus de validation ou de
conversion
10.2 Affichage de messages dans l'interface web
10.3 Surcharge des informations contenues dans les FacesMessage
10.4 Les groupes de messages
10.5 Regroupement des contenus de messages dans des fichiers de ressources
11. Déclaration et configuration de beans managés
11.1 Création d'une classe de bean s'exécutant côté serveur
www.editions-eni.fr
© Editions ENI
115
116
117
118
119
121
121
5/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
11.2 Configuration d'un bean managé
11.3 Utilisation du langage d'expressions pour exploiter les beans managés
12. Navigation entre les pages
124
126
128
12.1 Définition de règles de navigation
12.2 Utilisation de la navigation simple
12.3 Utilisation de la navigation dynamique
12.4 Rôle des instances par défaut de ActionListener et de NavigationHandler dans la
navigation dynamique
12.5 Particularités de la navigation JSF 2.x
12.5.1 Navigation implicite
12.5.2 Navigation conditionnelle
13. Arbre de composants et cycle de vie d'une page JSF
13.1 Les différents types de requêtes et leur mode de prise en charge
13.1.1 Les objets FacesContext et FacesContextFactory
13.1.2 Traitement d'une requête initiale
13.1.3 Traitement des requêtes visant des ressources externes à l'application
13.2 Les différentes phases du cycle de vie
13.2.1 La phase Restore View
13.2.2 La phase Apply Request Values
13.2.3 La phase Process Validations
13.2.4 La phase Update Model Values
13.2.5 La phase Invoke Application
13.2.6 La phase Render Response
14. Code source de l'application illustrant le chapitre
128
132
132
134
135
135
136
139
140
140
141
141
141
142
142
143
144
145
145
146
Exploitation des composants standards JSF
1. Description de l'environnement Eclipse pour JSF
1.1 La zone d'édition
1.1.1 Édition d'une page JSP
www.editions-eni.fr
149
149
150
© Editions ENI
6/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
1.1.2 Édition du fichier de configuration des ressources des applications web
152
1.2 La vue Project Explorer
158
1.3 La vue Outline
159
1.4 La vue Servers
159
1.4.1 Adaptateurs de serveurs
160
1.4.2 Configuration des serveurs
161
1.5 La vue Properties
162
1.5.1 Affichage des propriétés de composants de type HTML ou JSF
162
1.5.2 Affichage des propriétés de composants issus des catégories JSF Core et JSF
HTML
163
1.6 La vue Data Source Explorer
164
1.6.1 Accès aux bases de données
164
1.6.2 Accès à d'autres types de sources de données
165
2. Ajout de composants graphiques à une page
2.1 Classes et balises de restitution
2.2 Principaux attributs de balises communs
2.2.1 Attributs communs à l'ensemble des balises de restitution
2.2.2 Attributs communs aux seules balises de restitution correspondant à des
champs de saisie
2.3 Intégration des composants graphiques dans les pages JSP
2.3.1 Intégration du composant correspondant au formulaire de saisie
2.3.2 Intégration d'une grille de présentation
2.3.3 Intégration d'un texte simple et d'une zone de texte à ligne unique
2.3.4 Intégration d'une zone de mot de passe et d'un message
2.3.5 Intégration de boutons radio
2.3.6 Intégration d'une zone de liste déroulante à choix unique
2.3.7 Intégration d'une zone de texte multiligne
2.3.8 Intégration d'un bouton de soumission
3. Exploitation des validateurs standards
167
170
171
176
187
187
188
189
189
191
192
193
193
194
3.1 Les différents types de validateurs et leur mode d'utilisation
3.1.1 Description des validateurs
3.1.2 Composants supportant les validateurs
www.editions-eni.fr
165
© Editions ENI
194
194
195
7/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
3.1.3 Mode d'utilisation des validateurs
3.2 Contrôler la longueur d'une chaîne de caractères
3.3 S'assurer qu'une valeur numérique est comprise entre deux bornes
3.3.1 Exemple d'utilisation d'un LongRangeValidator
3.3.2 Exemple d'utilisation d'un DoubleRangeValidator
4. Exploitation des convertisseurs standards
4.1 Les différents types de convertisseurs et leur mode d'utilisation
4.1.1 Description des convertisseurs
4.1.2 Composants supportant les convertisseurs
4.1.3 Mode d'utilisation des convertisseurs
4.2 Conversion des valeurs numériques
4.2.1 Propriétés utilisées dans ce type de conversion
4.2.2 Mode de fonctionnement de la conversion
4.2.3 Exemple d'utilisation d'un NumberConverter
4.3 Conversion de la date et de l'heure
4.3.1 Propriétés utilisées dans ce type de conversion
4.3.2 Mode de fonctionnement de la conversion
4.3.3 Exemple d'utilisation d'un DateTimeConverter
5. Association d'écouteurs aux composants présents dans la page
5.1 Prise en charge des événements par un écouteur
5.1.1 Utiliser un écouteur prenant en charge les ActionEvent
5.1.2 Utiliser un écouteur prenant en charge les ValueChangeEvent
5.2 Associer plusieurs écouteurs à un unique composant
5.3 Gestion des événements par l'exploitation d'une méthode de JavaBean
6. Liaison de composants à des beans managés
6.1 Lier un composant à l'une des propriétés d'un bean managé
6.1.1 Liaison en écriture (sauvegarde des données de formulaires)
6.1.2 Liaison en lecture
6.2 Liaison à des méthodes de beans managés
7. Liaison de composants à des sources de données externes
www.editions-eni.fr
© Editions ENI
195
196
198
199
200
200
200
200
201
202
203
203
203
205
206
206
206
208
211
211
211
213
214
215
218
218
219
221
222
224
8/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
Convertisseurs et validateurs
1. Création d'un convertisseur personnalisé
1.1 Définition de la classe représentant le convertisseur personnalisé
1.2 Déclaration du nouveau convertisseur
1.2.1 À partir de JSF 1.2
1.2.2 À partir de JSF 2.0
1.3 Faire appel au nouveau convertisseur dans les pages web
2. Création d'un validateur personnalisé
229
230
234
234
235
236
237
2.1 Définition de la classe représentant le validateur personnalisé
2.2 Déclaration du nouveau validateur
2.2.1 À partir de JSF 1.2
2.2.2 À partir de JSF 2.0
2.3 Faire appel au nouveau validateur dans les pages web
239
243
243
244
245
Composants graphiques personnalisés
1. Introduction
247
2. Élaboration des classes régissant le comportement des nouveaux composants
248
2.1 Création d'un composant destiné à l'affichage simple (lecture seule)
249
2.1.1 Si le composant gère lui-même sa restitution graphique
249
2.1.2 Si le composant délègue sa restitution graphique à un Renderer spécifique 250
2.2 Création d'un composant permettant la saisie d'informations
253
2.3 Permettre la prise en charge des attributs de balise
256
2.4 Déclaration des nouveaux composants dans le fichier de configuration des ressources
de l'application
257
3. Définition de balises de composants personnalisés
3.1 Mise en place d'un fichier TLD (Tag Library Descriptor)
3.2 Définition d'un TagHandler associé à la balise représentant un composant
www.editions-eni.fr
© Editions ENI
258
259
261
9/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
3.2.1 Méthodes assurant la liaison avec un composant graphique et un Renderer 261
3.2.2 Méthodes permettant la prise en charge des attributs de balise
262
4. Constitution du rendu des composants personnalisés
265
4.1 Définition d'une classe représentant un Renderer personnalisé
265
4.2 Déclaration du nouveau Renderer dans le fichier de configuration des ressources de
l'application
267
5. Définition des événements associés aux nouveaux composants
5.1 Développement du gestionnaire d'événements
5.2 Modification de la TLD
5.3 Modification du TagHandler
268
269
270
271
6. Permettre l'utilisation des nouveaux composants dans les pages JSP d'une application 272
Internationalisation d'une application web
1. Mécanismes mis en œuvre dans le cadre du multilinguisme
1.1 La classe Locale
1.1.1 Description
1.1.2 Utilisation dans le cadre de la création d'applications web
1.2 La classe ResourceBundle et ses dérivées
1.2.1 Description
1.2.2 Utilisation dans le cadre de la création d'applications web
1.3 La classe NumberFormat
1.3.1 Description
1.3.2 Utilisation dans le cadre des applications web
1.4 La classe DateFormat
1.4.1 Description
1.4.2 Utilisation dans le cadre des applications web
2. Externalisation des libellés et des messages dans une application web
www.editions-eni.fr
© Editions ENI
275
276
276
277
278
278
282
283
283
284
284
284
285
286
10/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
2.1 Définir plusieurs fichiers de libellés
286
2.2 Utilisation de la langue définie par défaut dans le navigateur
287
2.3 Permettre l'exploitation de ces fichiers dans l'application web
288
2.3.1 Les dialectes supportés
288
2.3.2 Déclaration de ResourceBundle associés aux fichiers de libellés
290
2.4 Permettre à l'utilisateur de sélectionner dynamiquement un langage
292
2.4.1 Contenu des fichiers de libellés
293
2.4.2 Construire la page JSP
293
2.4.3 Définir une classe contenant une méthode chargée de modifier le langage par
défaut
294
3. Formatage des nombres et des dates
296
Facelets
1. Présentation de Facelets
297
2. Création de templates de pages web
298
2.1 Définition d'un modèle de pages
2.2 Définition d'une page cliente d'un modèle
3. Apports dans la création de composants personnalisés
300
302
303
3.1 Définition de l'apparence du composant
3.2 Définition d’une bibliothèque de balises
3.3 Déclaration d'une bibliothèque de balises
305
307
308
4. Création et exploitation de composants composites
309
4.1 Définition des modalités d'utilisation et de l'apparence du composant composite
4.2 Interface du composant
4.3 Implémentation du composant
4.4 Création d'une page exploitant un composant composite
www.editions-eni.fr
© Editions ENI
309
312
313
313
11/12
JSF 2 avec Eclipse
Développement d'applications web avec Java Server Faces (2ième édition)
5. Prise en charge des paramètres de la requête HTTP
5.1 Cas concret d'application
5.2 Récupération et exploitation des paramètres de la requête
6. Utilisation d’Ajax
315
315
316
320
6.1 Composants JSF capables de prendre en charge Ajax
6.2 Comportement côté client
6.3 Exemple de page web exploitant Ajax
6.3.1 Import obligatoire d'une bibliothèque JavaScript pour JSF
6.3.2 Balise <f:ajax>
321
322
322
322
322
Index
327
www.editions-eni.fr
© Editions ENI
12/12

Documents pareils