| Seam |
| Développement d'applications Web JEE avec Seam |
Référence : SEAM-03
Durée : 3 jour(s) |
|
Objectifs
- Comprendre ce qu’apporte JBoss Seam et pourquoi il a été créé
- Maîtriser les différents concepts de Seam
- Savoir concevoir, développer et déployer une application web en JBoss Seam
|
Contenu
De l’architecture JEE vers JBOSS Seam
- Servlet, JSP
- Architecture en couches
- Widgets complexes
- Couche de présentation : approche action (ex: Struts) et approche composants (ex: JSF)
- Couche métier : d’EJB2 vers EJB3/JPA
- Architecture standard
- Normes JSF et EJB3/JPA
- Naissance de Seam pour résoudre l’intégration entre JSF et EJB3 : The « glue »
Seam : un framework d’unification
- Nouveau modèle de programmation
- Promotion de l’approche POJO (Plain Old Java Objects) comme des composants métiers (services)
- Gestion par annotations versus JSF(XML) + EJB3 (XML + annotations)
- Utilisation correcte des ORM
- Comprendre les problèmes de « lazy-loading » des architectures MVC classiques
Bijection des dépendances
- Injection de dépendance (DI)
- Composants applicatif (@In)
- Composants serveur (@PersistenceContext,…)
- Outjection de dépendances
- Extension du concept d’injection de dépendance (@Out, @DataModel , …)
- Limites de la bijection et alternatives (property versus outjection)
Modèle de programmation contextuel
- Comparaison de l’approche Stateless classique versus Stateful
- Intérêt des Stateful applications (Performance, Fonctionnalités du browser, …)
- Cycle de vie des composants Seam
- Détail du scope Conversation
- Conversation Longue
- Workspace et concurrences
- Management de la conversation
- Gestion des transactions
Intégration de composants et flexibilité de Seam
- Facelets (Performance, Debugging, Moteur de templates, Data List component, ...)
- Seam JSF components (Seam UI Tags, Seam EL, …)
- Les filtres Seam (Redirection d’URL, Gestion d’erreurs, …)
Problématiques Web récurrentes
- Validation des données
- Sécurité
- Internationalisation (i18n)
- CRUD database application
Seam et l’approche par les tests
- Intérêts de l’approche POJO pour les tests unitaires
- Présentation de TestNG
- Le framework de test de Seam : « the SeamTest class »
- Tests unitaires et mock operations (bijection, entity manager, transactions)
- Tests d’intégrations : « the embedded runtime »
Gestion des PageFlows
Gestion des processus métier
- Principes des processus métier
- Intégration du framework JBoss jBPM dans Seam
- Utilisation de JBoss Eclipse IDE
Les interfaces riches
- Librairies AJAX
- JavaScript et Seam Remoting
Utilisation de Seam sans les EJB
- Pourquoi se passer des EJB ?
- Alternatives
- Les composants Seam Pojo
- JPA et Hibernate EntityManager
- Hibernate Session
Le développement sous Tomcat
- Intérêts d’un « lightweight » serveur?
- Mise en oeuvre avec Seam POJO Application et Seam EJB3 Application
|
| * Le déjeuner est compris dans le tarif. |
| ** Les livres sont offerts uniquement pour les formations inter-entreprise. Zenika se réserve le droit de changer le livre proposé à tout moment. |
|
| Auteur du cours |
| |
|
Grégory Boissinot est un spécialiste des outils de build et des problématiques d'intégration continue qu'il a mis en place à grande échelle. Grégory possède une expérience industrielle grand compte de ces problématiques et contribue activement à la communauté Open Source dans ce domaine en étant commiteur Hudson et Sonar. |
|
|
|