Gate Training

logo-png
Java - Java EE

Formation Développer des EJB3

3 Jours

Objectifs de la formation EJB 3.0

L’architecture EJB3 a gommé tous les défauts des EJB2.x. Les EJBs session ou MDB sont devenus les composants les plus naturels pour implémenter les services métier d’une application et sont particulièrement adaptés aux architectures en cluster. Du côté de la persistance, JPA et les classes entités ont radicalement transformé les activités de développement d’applications Java en fournissant une abstraction complètement objet au modèle de persistance. Grâce aux nombreux ateliers réalisés durant ce cours, vous maîtriserez le développement d’EJB 3 et leur intégration dans une application d’entreprise. Cette formation EJB s’appuie sur les produits phares dans le monde de l’Open Source : les IDEs Eclipse et IntelijIDEA, ainsi que les serveurs applicatifs Wildfly et/ou GlassFish.

À qui s’adresse cette formation ?

Public :

Ce stage s’adresse à des développeurs d’applications, responsables informatiques, architectes, chefs de projets, ingénieurs, etc.,

 

Prérequis :

La maîtrise du langage Java est impérative.

 

Contenu du cours EJB 3.0

L’architecture JavaEE

Architecture N-tiers et modèle de programmation distribuée
Les rôles de développement
Composants Java EE  et containers
APIs JavaEE  et technologies (Servlets, JSF, EJB, Webservices)
Les serveurs applicatifs et les services fournis
Présentation de Wildfly et de Glassfish
Les IDEs pour JavaEE  – Présentation d’Eclipse et IntelijIDEA

Architecture EJB3

La spécification EJB3
Architecture : la classe Bean, les interfaces « métiers », les annotations, le descripteur de déploiement XML optionnel
Les différents types d’EJB : session, entité et message-driven
Packaging et déploiement des EJB 3
Le rôle du conteneur d’EJB
Principe et rôle de JNDI (Java Naming and Directory Interface), Localisation des EJB3 avec JNDI
Injection de dépendances
Principe et rôle des intercepteurs
Compatibilité avec les EJB 2.x
Les clients des EJBs
Architecture typique MVC d’une application Web

Services métier et EJBs sessions

Les deux types d’EJBs sessions : stateless et stateful
Cycle de vie d’un EJB stateless, gestion du pool
EJB stateless et services Web
Cycle de vie d’un EJB stateful, mécanisme de passivation et d’activation
Méthodes de callback.
Cas d’utilisation et EJB session, Rapport entre EJB Session et HTTP session
Application Ajax et concurrence d’accès aux EJBs session
EJB session en cluster

Modèle asynchrone et Message Driven Beans

Principe des MOM (Middleware Orientés Message)
l’API JMS (Java Message Service)
Modèles de messages Publish/Suscribe et Point-To-Point
Structure d’un message JMS (entête, corps, sélecteur)
Principe, mise-en-oeuvre et cycle de vie d’un EJB message-driven
Le client d’un EJB message-driven
Configuration des objets JMS administrés

Persistance et entités

Introduction au Mapping objet-relationnel
Modèle de persistance et présentation de JPA
Caractéristiques d’une classe entité
Rôle de la clé primaire, cas des clés primaires composite
EntityManager et EntityManagerFactory
API de l’entity manager
Cycle de vie d’un classe entité
Le langage de requêtage JPQL : syntaxe et utilisation
Méthodes « callback » et listeners

Services JEE et piles d’interception

Principe des intercepteurs, configuration, chaînage
Intercepteurs par défaut
Ordre d’invocation des intercepteurs
Implémentation d’intercepteurs

Transactions et EJBs

Les transactions distribuées et le protocole de commit à deux phases
L’API JTA
Gestionnaire des transactions et intercepteur
Gestion déclarative et attributs transactionnels
Gestion programmée des transactions
Les transactions longues

Sécurité et EJBs

Mise en oeuvre de la sécurité dans une application JavaEE.
L’API JAAS
Authentification des utilisateurs
Les rôles, les droits d’accès aux méthodes
Sécurité déclarative ou programmée sur les EJBs

Travaux Pratiques

Ils seront effectués en utilisant les outils de développement Open Source Eclipse. Les serveurs d’applications utilisés seront Wildfly et/ou GlassFish

Réf:

0032

Tarif:

600 Dt

Niveau:

Intermédiaire

Classe à distance:

Possible

Pas de sessions disponibles