JEE : les EJB

ANNEE_DEBUT=2009
DATES_1:du 19 au 23 Janvier
DATES_1:du 2 au 6 Mars
DATES_1:du 11 au 15 Mai
DATES_2:du 15 au 19 Juin
DATES_2:du 14 au 18 Septembre
DATES_2:du 19 au 23 Octobre
DATES_2:du 14 au 18 Décembre
CODE:AS005

Public


Développeurs d'applications JEE.

Objectifs


Comprendre les principes de fonctionnement et maîtriser le développement et la mise en oeuvre des EJB. Nos cours sont fondés sur de nombreux travaux pratiques permettant d'assimiler les technologies EJB 3.

Préalables


Il est demandé aux participants de connaître la programmation en Java, ainsi que quelques notions de bases de données.

Programme


Le modèle JEE


Spécifications du JEE : les composants d'un serveur d'application Java, positionnement des EJB, architectures d'applications.
Positionnement des différents éléments: container, serveur, services associés: JDBC, JNDI, JMAPI, JTS, JIDL, JMS
Pool d'EJB. Enregistrement des EJB, identification.
Déploiement sur différents serveurs d'application du marché : Geronimo, Websphere, JBoss, GlassFish, ...

Développement


Composants d'une application d'entreprise: .ear, .jar, .rar, .war
Types d'EJB : EJB entité, EJB session, EJB Message-driven. Persistance et transactions.
Les annotations spécifiques EJB 3
Méthodes de base: ejbCreate(), ejbActivate(), setSessionContext(), ejbStore(),...

Mise en oeuvre


Apport du jdk1.5. Annotations et génériques. Principes de mise en oeuvre des EJB3.
Simplification de la définition des interfaces. Utilisation des annotations en remplacement du descripteur de déploiement. Simplification de la correspondance objet/relationnel.
Les serveurs d'EJB3: ejb3deploy sous JBoss, WebSphere 6.1.

EJB Session


EJB stateless, stateful. Notion de conversation. Fichiers de déploiement. Contraintes de conversation. Transactions.
Dépendance d'injection. Intercepteurs de méthodes métier.
Application: création d'un EJB stateless "Conversion de devises", création d'un EJB stateful "Caddie"

EJB Entité


Persistance avec les EJB. Fichiers de déploiement. Définition des clés primaires. Définition des méthodes de recherche (query). Gestion des jointures en EJB3.
Les fichiers de persistance. Méthodes d'accès: FIELD/PROPERTY. Mapping par défaut. Utilisation de l'EntityManager.
Relations entre EJB (one-one,one-many,many-many). Le langage EJB-QL
Héritage. Synchronisation avec la base de données, détachement/attachement.
Application: création d'une application utilisant des jointures Many/Many

Gestion des données


Pool de connexions. Correspondance objet/relationnel. Mapping XML.

EJB MessageDriven


Développement de composants orientés message
Principe des MOM (Middlewares Orientés Message). Présentation de JMS. Développement d'un EJB Message Driven (MDB).
L'interface JMS MessageListener. Traitement asynchrone. La méthode onMessage().
Fichiers de déploiement.
Cycle de vie des MDB. Gestion des erreurs.

Interopérabilité


Compatibilité ascendante des EJB3. Utilisation d'EJB en version 2 avec des EJB 3.
Utilisation des fichiers de déploiement xml avec les EJB 3
Mise en oeuvre d'une application faisant cohabiter les deux versions d'EJB.

Transactions


Les transactions distribuées: commit à deux phases.
Présentation JTA et JTS.
Annotations de transaction.
Gestion des exceptions dans un contexte transactionnel.
Mise en oeuvre d'une application EJB3 transactionnelle. Mise en évidence des retours arrières (rollback) et de la propagation du contexte transactionnel.

Sécurité


Présentation de JAAS. Mise en oeuvre dans le conteneur d'EJB. Rôles et permissions sur les méthodes.
Intégration de la sécurité dans le serveur d'applications.



Pythagore F.D.
01 55 33 52 10
pfd@pythagore-fd.fr

Nos centres de connexion
Centres de connexion
Calendrier
Code Cours:AS005

Contenu de la formation
JEE : les EJB:

Accès à la liste des cours



Vous pouvez bien entendu composer votre programme personnel à partir de nos descriptifs de cours