Formation : Développer des EJB en Open source
Se former
avec ORSYS
- Renseignements :
- Durée : 4 Jours
- Type : En centre (inter)
- Diplômant : Non
- Prix H.T. € :
1930.00
- Objectifs :
- Les Enterprise Java Beans représentent aujourd'hui la solution la plus avancée en matière d'architecture distribuée. Avec les nombreux travaux pratiques réalisés durant ce cours, vous maîtriserez les outils et techniques tels que les EJB, JMS, JDBC et JNDI.
- Public visé :
- 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. La connaissance des servlets et des JSP est préférable.
- Architectures n-tiers, composants distribués
- Architectures n-tiers : évolution du client-serveur traditionnel.
- Architectures distribuées : .NET, RMI, CORBA, EJB.
L'architecture J2EE 1.4 et les serveurs d'applications
- J2EE : définition, présentation des API.
- Relations entre servlets, JSP et EJB.
- Eléments constitutifs et fonctionnalités d'un serveur d'applications.
- Compatibilité des serveurs d'applications avec les spécifications J2EE.
Rappels sur les servlets et JSP
- Principe et architecture d'une servlet.
- Gestion des sessions.
- Espace de stockage.
- Principe d'une JSP, scriplets, objets prédéfinis, acions.
JBoss et Eclipse
- Le serveur d'applications Open Source JBoss : architecture, marché, perspectives.
- Eclipse, un IDE Open source universel.
- Les plug-ins Lomboz et JBoss-IDE.
- Introduction aux Xdoclets.
Introduction aux EJB, l'architecture EJB2.1
- La spécification EJB 2.1.
- Architecture : la classe Bean, les interfaces Home et Remote, le descripteur de déploiement XML.
- Les différents types d'EJB.
- Le rôle du conteneur d'EJB.
- Présentation de RMI/IIOP, protocole d'accès aux EJB.
- Principe d'un service de nommage : exemple avec la registry RMI.
- JNDI (Java Naming and Directory Interface) : fonctionnement, applications, API.
- Localisation des EJB avec JNDI.
Les clients des EJB
- Les applications «standalone» clientes d'un EJB.
- Les servlets/JSP clientes d'un EJB.
- Java Beans clients d'un EJB.
Déploiement des EJB
- Principe du déploiement des EJB, rôle du conteneur EJB.
- Le descripteur de déploiement en XML et son contenu.
- Les différentes étapes du déploiement.
- Présentation des fichiers spécifiques à JBoss.
Création de services avec les EJB «sessions»
- Comparaison EJB sessions stateless et stateful.
- L'EJB session du type stateless, son cycle de vie.
- L'EJB session du type stateful, son cycle de vie : mécanismes de passivation et d'activation.
- Les accès concurrents sur les EJB session.
- Rôle du contexte d'un EJB session.
- Rôle des objets «Handle» sur les EJB session stateful.
- Le bon usage des EJB du type session.
JDBC (Java DataBase Connectivity)
- Problématique de la connexion aux bases de données depuis Java.
- Principe de JDBC, les différents types de pilotes JDBC.
- Les APIs JDBC et leur mise en oeuvre.
- Le pooling des connexions avec les DataSources.
- La localisation d'un pool de connexions avec JNDI.
Persistance de données avec les EJB «entités»
- Mapping objet-relationnel, rôle de la clé primaire.
- Les EJB entités BMP, leur cycle de vie.
- Le rôle du contexte d'un EJB BMP.
- Les EJB entités CMP, leur cycle de vie.
- Le langage EJB-QL.
- Critères de choix entre CMP et BMP.
- Les accès concurrents sur les EJB entités.
Relations entre EJB
- Du modèle objet au modèle EJB.
- Problématique des relations entre EJB entités.
- Les différentes relations : de un vers un, de un vers plusieurs, de plusieurs vers plusieurs.
- Mise en oeuvre des relations dans les EJB entités.
- Outil de mapping objet-relationnel : introduction à Hibernate.
Traitement de messages avec les EJB «message-driven»
- Principe des MOM (Middlewares Orientés Message), l'API JMS (Java Message Service).
- Modèles de messages Publish/Suscribe et Point-To-Point.
- Structure d'un message JMS (en-tête, corps, sélecteur).
- Principe, mise en oeuvre et cycle de vie d'un EJB message-driven.
- Descripteur de déploiement.
- Le client d'un EJB message-driven.
Les transactions et les EJB
- Principe des transactions distribuées : commit à deux phases.
- Les API JTA : «Java Transaction API».
- Gestion déclarative et attributs transactionnels.
- Gestion programmée des transactions.
- Conséquences sur les performances.
La nouvelle architecture EJB 3.0
- Besoin de simplification de l'architecture EJB 2.
- Description de l'architecture EJB 3.0.
- EJBs sessions.
- EJBs entités.
- Rôle de l'Entity Manager.
- Interopérabilité EJB 2.x avec EJB 3.0.
- Support de EJB 3.0 par les serveurs d'applications.
Sécuriser l'accès aux EJB
- Principe de JAAS (Java Authentication and Authorisation Service).
- Les rôles, les groupes de permissions et les permissions sur les méthodes.
- Mise en oeuvre de la sécurité sur l'accès aux méthodes d'un EJB.
- Sécurité déclarative ou programmée.
Design patterns J2EE
- Exposé des bonnes pratiques pour la mise en oeuvre des EJB.
- Présentation de quelques design patterns : Transfer Object. Data Access Object. Session Façade. Composite Entity.
- Travaux pratiques
Ils seront effectués en utilisant les produits Open Source Eclipse 3 et JBoss 4.