Composants métiers JavaEE : les EJB 3.0
Description
Les EJB ont pendant longtemps souffert d'une mauvaise image : trop complexes à développer, fastidieux à configurer, pas toujours réellement portables, ... Cependant, avec la venue de JavaEE 5 et de la spécification EJB 3.0, les EJB sont devenus beaucoup plus simples à mettre en oeuvre, tout en restant très puissants.
Objectifs
A l'issue de cette formation, les participants seront en mesure de:
- Comprendre les concepts présentés dans les différents modules de la formation
- Pouvoir effectuer des choix entre les différentes techniques présentées
- Réussir à les mettre en oeuvre de façon autonome lorsque le module est accompagné de travaux pratiques
Méthodes pédagogiques
Formation avec un minimum de 50% de travaux pratiques. La session alterne les présentations théoriques avec les exercices en groupe ou individuels. Des versions numériques de tous les documents sont remises aux participants (support de cours, énoncés, corrigés).
Participants
Ce cours s'adresse aux développeurs, architectes ou chefs de projet, connaissant déjà bien Java et la plateforme JavaEE et souhaitant apprendre à développer, utiliser et intégrer des EJB.
Pré requis
- Maîtrise du langage Java nécessaire
- Connaissances de base sur les serveurs d'application JavaEE
Programme
Les Objet Métier
Présentation de la vision de l'Objet Métier par l'OMG et ses implémentations dans diverses technologies.
- Objet métier : présentation
- Architectures à base d'objets répartis : CORBA, DCOM, RMI
- Limite des architectures à base d'objets répartis
Caractéristiques de base de JavaEE
Rappels sur les principes de base de la plateforme JavaEE et du rôle des conteneurs.
- Les serveurs d'applications JavaEE
- Rôle des conteneurs
- Architecture canonique JavaEE
- Les API de JavaEE
- Panorama des principaux serveurs JavaEE
Introduction aux EJB
Présentation des différents types d'EJB, leurs différences et leur place dans une architecture.
- EJB Session Stateless
- EJB Session Stateful
- EJB Message Driven
- La disparition des EJB Entity
- Les services offerts par le conteneur
Développer des EJB Session Stateless
Techniques et bonnes pratiques de développement des EJB Session Stateless.
- Cycle de vie d'un EJB Session Stateless
- Développer les interfaces et l'implémentation
- Présentation des annotations utiles
- Lien entre EJB Session Stateless et Web Service
Développer des EJB Session Stateful
Techniques et bonnes pratiques de développement des EJB Session Stateful.
- Cycle de vie d'un EJB Session Stateful
- Développer les interfaces et l'implémentation
- Présentation des annotations utiles
Java Persistence API
Présentation de l'API qui vient remplacer les EJB Entity.
- Le mapping Objet / Relationnel
- Notion d'entité
- Entity Manager et Persistence Unit
- Annotations JPA
Développer des EJB Message Driven
Développer des EJB évènementiels basés sur JMS.
- Java Messaging Service
- Cycle de vie d'un EJB MDB
- Les annotations utiles
Services techniques EJB
Présentation de la façon de configurer les services techniques pris en charge par le conteneur.
- Les EJB et la gestion de la sécurité
- Les EJB et la gestion des transactions
Les Intercepteurs
Présentation des Intercepteurs EJB, utilité, développement.
- Le concept d'intercepteur EJB
- Intercepter une invocation