Java Enterprise Edition, ou Java EE (anciennement J2EE), est une spécification pour la technologie Java de Sun plus particulièrement destinée aux applications d’entreprise. Dans ce but, toute implémentation de cette spécification contient un ensemble d’extensions au framework Java standard (JSE, Java Standard Edition) afin de faciliter la création d’applications réparties. Ce cours délivré par un instructeur permet aux stagiaires d'acquérir les compétences nécessaires au développement d'applications Web avec JBoss ou GlassFish. Il permettra également aux stagiaires de comprendre la notion de service web, d’en comprendre l'intérêt et d’en développer.
Public et
pré-requis: Les développeurs, analystes programmeurs, "anciennes technologies" ainsi que les chefs de projets.
Module 1: Vue d'ensemble de Java EE
Le modèle d'application de Java EE
Applications distribuées multi-tiers
Conteneurs Java EE
Web services
Assemblages et déploiement
Packaging des applications
APIs Java EE
Module 2: Applications Web
Cycle de vie d'une application Web
Modules Web
Configuration des applications Web
Accès aux bases de données à partir des applications Web
Pattern MVC (Mdèle Vue Contrôleur)
Module 3: Servlets
Introduction aux Servlets
Cycle de vie
Partage d'informations
Initialisation d'un Servlet
Ecritures des méthodes de Servlets
Filtrage des demandes et des réponses
Accès au contexte Web
Maintient de l'état
Module 4: JSP - Java Server Pages
Architecture d'une page JSP
Cycle de vie d'une page JSP
Langage d'expressions unifiées
Composants JavaBeans
Tags personnalisés
Réutilisation de contenu dans les pages JSP
Transfert du contrôle à un autre composant Web
Groupes de propriétés des pages JSP
Module 5: Documents JSP
Fonctionnements des documents JSP
Création de documents JSP
Module 6: Bibliothèque de tags JSP standard
Utilisation de JSTL
Core Tag Library
La bibliothèque de tag XML
La bibliothèque de tag SQL
Fonctions JSTL
Module 7: Scripting dans les pages JSP
Utilisation de scripts
Désactivation du scripting
Déclarations JSP
Scriptlets JSP
Expressions JSP
Atelier pratique : Réalisation d’une application simple (JSP/servlet) basée sur MVC avec une authentification et un contrôle d’accès.
Module 8: Présentation de Struts 1 et 2
Rappel MVC
Module 9: Struts 1
Les Actions et les Formulaires.
Contrôler la navigation.
Présentation de Tiles.
Module 10: Struts 2
Nouvelle architecture Struts 2
Flux de traitement des requêtes.
Module 11: Le framework JSF
Présentation du framwework
Les différentes implémentations MyFaces, ...
La technologie JSF
Définir la navigation
Les Managed Beans
Création de l'interface utilisateurs :
- Le render
- La gestion des évènements
Cycle de vie des éléments JSF
Atelier pratique : Exploitation des frameworks Struts1 et 2 et JSF pour la réalisation d’une application similaire à celle de l’atelier précèdent afin de démontrer l’apport des frameworks.
Module 12: Introduction aux EJB 3 Session
Présentation et implémentation des EJB Sessions “Stateless” et “Stateful”
Déploiement d’un EJB.
Développement d’un client EJB.
Exploiter les transactions avec JTA
Module 13: Hibernate
Problématique du mapping objets relationnel
Historique des frameworks de persistance dans le monde Java
Architecture de Hibernate
Développement d'un fichier de mapping
Création et recherche d'objets persistants
Utilisation de HQL (Hibernate Query Language)
Module 14: JPA (Java Persistance Architecture) avec Hibernate
Le rôle de JPA dans une application Java EE
Rappel sur le mapping objet relationnel
Utilisation de l’EntityManager.
Module 15: JMS (Java Message Services)
La communication inter application.
Communication synchrone et asynchrone.
Notion de Queue et Topic, Sender/Receiver et Publish/Subscribe
Utilisation et administration d’un serveur implémentant JMS.
Module 16: EJB Message Driven
Implémentation d’un EJB message en s’appuyant sur les notions de JMS et des EJB.
Atelier pratique : Développement d’un EJB session “HelloWorld” avec et sans état. Utilisation d’Hibernate et JPA pour les données. Mise en place EJB message pour la communication entre application.
Module 17: Présentation des services Web
Positionnement des Web services dans un architecture distribuée.
Module 18: Description d'un Service Web
Les fichiers WSDL pour décrire un Service Web
Les balises mises en oeuvre
Module 19: SOAP
utiliser SOAP pour consommer un service web
Les messages leurs structures et leurs contenus
Protocole HTTP et RPC pour transporter les messages
Référencer des Services Web avec UDDI
Présentation de UDDI
Rechercher des services web dans un référentiel UDDI
Utilisation de JAX-RPC
Présentation et utilisation de JAX RPC.
Utilisation de SOAP
Création des messages et attachements
Consommer et travailler avec un Service Web
Utilisation des annuaires UDDI
Consulter un annuaire avec JAXR
Module 20: Webservices et sécurité
Les modes de sécurité
Application, rôles et utilisateurs
Méthodes d'authentification
Programmation de la sécurité en Java 'HttpServletRequest'
Atelier Pratique : Développement d’un service web avec Axis et en utilisant le nouveau support du JDK 1.6.
Atelier Pratique : Implémentation d’un client consommant le service web.