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.
Ce stage s'adresse à des développeurs d'applications, responsables informatiques, architectes, chefs de projets, ingénieurs, etc.,
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
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
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
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
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
Principe des intercepteurs, configuration, chaînage
Intercepteurs par défaut
Ordre d'invocation des intercepteurs
Implémentation d'intercepteurs
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
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
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
2 j
Java - Java EE
Architecture d'entreprise J2EE4 j
Java - Java EE
Développer des applications J2EE (Servlets, JSP, JDBC, JSTL)3 j
Java - Java EE
Glassfish2 j
Java - Java EE
Architecture d'entreprise Java EE