Organisme de Formation aux technologies et métiers de L'informatique
java

Formation Développer des composants EJB 3

Exploiter l'architecture de composants logiciels côté serveur

Informations générales

HF-EJB3
3 jours (21h)
1 930 €HT
repas inclus

Objectifs

Dans ce cours, vous apprendrez à :

  • Découvrir les bases de la technologie EJB3
  • Connaître les différents types d'EJB (entité, session et MDB)
  • Identifier les apports des EJB 3.x
  • Gérer des transactions
  • Sécuriser l'accès aux EJB

Public

Ce cours s'adresse avant tout aux personnes suivantes :

  • Développeurs Java

Prérequis

Pour suivre ce cours, vous devez déjà posséder les connaissances suivantes :

  • Avoir suivi la formation Les fondamentaux de la programmation Java (OB300) ou maîtriser la programmation orientée objet Java

Programme de la formation

La technologie Enterprise JavaBeans (EJB) est une architecture de composants logiciels côté serveur pour la plate-forme de développement Java EE. La spécification EJB3 simplifie la mise en oeuvre des composants distribués Java puisque dans sa version 3, le modèle EJB utilise le principe d'annotation java (métadonnées) pour spécifier toute la configuration et les propriétés transactionnelles de l'objet. En suivant cette formation, les participants apprendront les bases de la technologie EJB3, découvriront les différents types d'EJB (entité, session et MDB), la gestion des transactions et les meilleures pratiques pour sécuriser l'accès aux EJB.

1 - L'écosystème JEE

  • Architectures n-tiers. Évolution du client-serveur
  • Positionnement solution standard JEE ou combinaison de Frameworks JEE (Spring, Hibernate, Struts, etc)
  • JEE : définition et présentation
  • Éléments constitutifs et fonctionnalités d'un serveur d'applications
  • Comptabilité des serveurs d'applications avec les spécifications JEE
  • Le serveur d'applications Open Source JBoss : architecture, marché, perspectives

2 - Servlets et JSP

  • Eléments de base HTTP
  • Notion de conteneur web
  • Structure normalisée d'une application Web J2EE
  • Principe de fonctionnement et architecture d'une servlet
  • Gestion des sessions. Espace de stockage
  • Principe d'une JSP (scriplets, objets, actions)
  • Architecture MVC

3 - Les EJB 3

  • La spécification EJB 3. Architecture : classe Bean, interfaces "métiers", annotations, descripteur de déploiement XML
  • 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 EJB 3 avec JNDI
  • Injection des dépendances
  • Principes et rôles des intercepteurs
  • Comptabilité avec les EJB 2.x.
  • Les applications "standalone" clientes d'un EJB
  • Les applications Web clientes d'un EJB

4 - Les EJBs Session

  • Comparaison EJB Session "stateless" et "stateful"
  • EJB session "stateless" et "stateful". Cycle de vie
  • Méthodes "callback"
  • Les accès concurrents sur les EJB Session
  • Configuration dans les architectures en cluster
  • Le bon usage des EJB sessions

5 - Les EJBs Entité

  • Mapping objet-relationnel, rôle de ka clé primaire
  • Clé primaire simple ou composite
  • Le nouveau modèle de persistance EJB 3 et ses API JPA
  • Rôle de l'entity Manager
  • Opérations sur les EJB entités
  • Cycle de vie d'un EJB entité
  • Méthodes "callback" et listeners
  • Les accès concurrents sur les EJB entités
  • Le langage EJB-QL : syntaxe et utilisation
  • Relations entre EJB "entités" : du modèle objet au modèle EJB. Héritage. Mapping
  • Associations : de un vers un, de un vers plusieurs, de plusieurs vers plusieurs. Mise en oeuvre

6 - MDB et le principe des MOM (Middleware Orientés Message)

  • Modèles de messages Publish/Suscribe et Point-to-Point
  • Structure d'un message JMS
  • Principe, mise en oeuvre et cycle de vie d'un EJB message driven
  • Le client EJB message driven
  • Configuration des objets JMS administrés

7 - Les services Web et les EJB

  • Principe d'un service Web. Les technologies fondatrices : HTTP, XML, SOAP, WSDL et UDDI
  • API JAX-RPC et JAX-WS
  • Transformation d'un EJB session stateless en service web

8 - 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

9 - Sécuriser l'accès aux EJB

  • La sécurité d'une application JEE
  • Authentification des utilisateurs
  • Les rôles, les droits d'accès aux méthodes
  • Sécurité déclarative ou programmée sur les EJB
  • Les outils de programmation pour la création et l'utilisation de Web services (Axis, JAX-RPC...)
plus d'infos

Méthode pédagogique

Chaque participant travaille sur un poste informatique qui lui est dédié. Un support de cours lui est remis soit en début soit en fin de cours. La théorie est complétée par des cas pratiques ou exercices corrigés et discutés avec le formateur. Le formateur projette une présentation pour animer la formation et reste disponible pour répondre à toutes les questions.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 08/11/2023