CI26-53004 - Struts 2 - Conception et

Transcription

CI26-53004 - Struts 2 - Conception et
CI26-53004 - Struts 2 - Conception et développement
Développez des applications web composites avec Struts 2
INTRA : sessions à planifier pour votre entreprise
Les interfaces WEB sont aujourd'hui soumises à des cahiers des charges de plus en plus complexes : intégrer AJAX
pour des ergonomies WEB 2, garder le bénéfice MVC2 démontré par Struts 1, intégrer nativement les composants
graphiques riches JSF, communiquer nativement avec les socles techniques à base de Spring. Basé sur le framework
Webwork, Apache Struts 2 est une refonte complète de Struts 1 qui permet de répondre à cette complexité. Il apporte
ainsi une réponse ambitieuse et prometteuse unifiant de manière cohérente les frameworks web pour bâtir des clients
riches complexes.
Objectifs
Comprendre la nouvelle
architecture Struts 2, et la
comparer avec l'approche Struts
1. Maîtriser les taglibs Struts 2, la
value stack OGNL, les différentes
extensions pour découpler les
services. Intégrer des plugins
Struts 2 et les frameworks Spring,
AJAX et JSF.
Programme
Architecture technique du framework Struts 2
Rappels sur les architectures Java EE et le pattern MVC
• Rappels sur les architectures Java EE : JSP, Servlets, Filters, serveur d'applications.
• Rappel sur les architectures logicielles et techniques : architectures en tiers et en couches.
• Les patterns MVC et MVC2 : séparer Modèle, Vue et Contrôleur.
T.P. Présentation de l'architecture logicielle et des patterns MVC dans la couche de présentation.
Profils
Développeurs, concepteurs, chefs
de projet.
Présentation de l'architecture technique du framework Struts 2
• Les principaux éléments du framework: Filters, Actions, Results, Interceptors.
• Librairies et fichier de configuration struts.xml.
• Activation du framework dans le descripteur de déploiement.
Prérequis
T.P. Mise en place du framework STRUTS 2 dans le projet Web de développement.
Avoir suivi le stage `Servlets, JSP
- Développement Web Java EE`
ou posséder un niveau équivalent.
Avoir des notions sur Struts 1 est
un plus.
Migration de Struts 1 à Struts 2
Durée
3 jours
•
•
•
•
•
Un changement radical sur le noyau ActionServlet : une rupture avec les Filter WebWorks.
Une fusion des mécanismes Action et ActionForm de Struts 1.
Une meilleure intégration des services : conversion de données, validation.
Un découplage des fonctions avec les Interceptors : extraction des exceptions et workflows.
Comparaison Struts1, Struts 2 et JSF.
T.P. Comparaison de l'application de gestion des congés avec les topologies Struts 1 et Struts 2.
Les fondamentaux du framework Struts 2
Prix
Intra uniquement, nous consulter.
Les + pédagogiques
• Fil rouge : une application basée
sur un cas industriel.
• Plus de 60% du temps consacré
à la pratique.
Cinématique de navigation: cycle de vie d'une requête
•
•
•
•
•
Le cycle de vie d'une requête : Mapping, Action, Result.
Mapping depuis un formulaire Web vers une Action : récupération des données.
Redirection logique avec les Results.
Communication entre les Actions et la présentation.
La gestion des Mappings et des modules avec les packages dans le fichier Struts.xml.
T.P. Redirection simple avec un Result vers la page Accueil. Mise en place d'une chaîne cinématique pour traiter les
données du formulaire de Login. Mise en place d'un module fonctionnel Authentification dans les packages.
Eléments de présentation avec les taglibs
•
•
•
•
Taglibs de formulaire.
Tags de contrôle de flux.
Tags de données.
Gestion de la Value Stack avec OGNL : Object Graph Navigation Language.
Les Actions
•
•
•
•
•
Création des commandes par spécialisation des classes ActionSupport.
Communication de données entre les Actions et la présentation.
Les différents types d'Action dans le framework Struts 2.
Le problème des Tokens pour éviter la ressaisie et le chaînage des Actions.
Tests unitaires sur les Actions.
Gestion des messages et internationalisation I18N
•
•
•
•
Architecture I18N dans Struts 2.
Déclaration des fichiers properties et configuration XML.
Utilisation des tags pour afficher les contenus internationalisés.
Gestion des messages d'erreurs et internationalisation.
T.P. Internationalisation des formulaires Authentification et Poser Demande de Congé. Mise en place des messages
d'erreurs fonctionnelles dans l'application Gestion des Congés.
Services techniques du framework Struts 2
Conversion des types de données
• Liaison formulaires / champs action avec des expressions OGNL.
• Les convertisseurs standards : Date, String, ArrayList, Maps.
• Comment construire un convertisseur standard.
FuturSkill Training - 13, rue Ernest RENAN - 92000 Nanterre
Tél : +33 (0)1 78 14 18 11 - www.futurskill-training.fr - [email protected]
CI26-53004 - Struts 2 - Conception et développement
Développez des applications web composites avec Struts 2
T.P. Conversion des types dates pour le formulaire Poser Demande.
Validation de la saisie
•
•
•
•
•
Présentation du framework de validation Struts 2.
Liaison des Actions et de champs à valider.
Utilisation des annotations Java 5 pour la liaison.
Les validations standards.
Comment construire un validator standard ?.
T.P. Utilisation des validateurs standards sur les formulaires de l'application.
Modification du comportement avec les Interceptors
•
•
•
•
Architecture des Interceptors dans Struts 2.
Associer une Stack d'Interceptors avec une Action.
Les Interceptors standards de Struts 2 : Data Transfer, Utilities, Workflow, ....
Comment construire un Interceptor spécifique ?.
T.P. Utilisation d'un interceptor de LOGGER pour l'application. Utilisation d'un interceptor EXCEPTION pour
l'application.
Enrichir les vues par extension des Results
• Le mécanisme des extensions des Results.
• Les différents mécanismes prévus en standard : Freemarker, Velocity, Jasper Reports, XSL, Stream.
• Présentation du templating avec Tiles.
T.P. Intégration de templates avec Tiles. Intégration de vues Freemarket dans l'application. Intégration de vues PDF
dans l'application.
Intégration Struts 2 avec les autres frameworks
Les plugins Struts 2
• Le mécanisme d'extension des plugins.
• Les différents plugins disponibles : Spring, JSF, AJAX, Portlets, DWR, ....
• Un plugin de compatibilité Struts 1.
T.P. Mise en place du plugin Struts 1 pour réutiliser des applications Struts 1.
Intégration avec AJAX
• Le plugin DWR.
• Les tags AJAX dans le framework Struts 2.
• Intégration avec les librairies JavaScript DOJO.
T.P. Mise en place de tags AJAX dans les vues de l'application. Mise en place du plugin DWR pour les invocations
Javascript de traitements Java.
Intégration avec JSF
• Installation et configuration du plugin JSF.
• Décomposition des phases du cycle JSF en une stack d'interceptors Struts 2 : jsfstack.
• Intégration des Actions et Results Struts 2 dans le cycle JSF.
T.P. Installation du plugin JSF. Intégration de pages JSF dans l'application Struts 2. Mise en place de composants
JSF spécialisés dans l'application de gestion des congés.
Intégration avec Spring
• Installation et configuration du plugin Spring : listeners, objectFactory et plugin.
• Les deux stratégies de mapping : injection par Spring ou autowiring avec création par Struts 2.
• Intégration des éléments Action, Result et Beans Spring avec le plugin.
T.P. Installation du plugin Spring. Injection des Actions Struts 2 en Beans Spring. Autowiring Spring et création par
Struts2 de ses éléments.

Documents pareils