Objectifs
À l'issue de ce cours, les participants sauront :
§ Mettre en oeuvre des fonctionnalités de la couche business en utilisant la technologie EJB
§ Décrire les meilleures pratiques et expliquer d'autres aspects avancés en matière de développement de composants métier avec la technologie EJB
§ Assembler et déployer des composants d'entreprise en technologie EJB sur un serveur d'applications
§ Intégrer une application basée sur la technologie EJB à l'aide de l'API Java Messaging Service, de Java Connector Architecture et des services Web
Vue d'ensemble :
Le cours 'Développement de composants métier avancés avec la technologie EJB' permet aux participants d'acquérir les connaissances nécessaires au développement de fonctionnalités de back-end robustes à l'aide de la technologie Enterprise JavaBeans (EJB). Il utilise un scénario d'enchères en ligne pour montrer comment tirer parti des services gérés par conteneur avec les beans entité, session et message pour résoudre des problèmes concrets d'une application de commerce électronique.
Ce cours met l'accent sur la pratique du codage EJB, mais il est également consacré aux conceptions et aux meilleures pratiques utilisées pour résoudre des problèmes de transaction, de messagerie, de sécurité et d'intégration d'applications existantes. Par ailleurs, il montre comment les composants EJB peuvent être intégrés aux technologies de services Web. Pour les travaux pratiques, les participants utilisent le serveur de mise en oeuvre de référence J2EE afin d'acquérir une expérience indépendante du matériel.
Remarque : ce cours suppose que les participants ont des connaissances de base des composants EJB, telles que les notions présentées dans le cours FJ-310 'Développement d'applications pour la plate-forme J2EE'.
Public visé :
Ce cours s'adresse aux développeurs de composants métier EJB chargés des tâches suivantes :
§ Analyse, conception, développement et test d'applications basées sur la technologie EJB
§ Déploiement d'une application en technologie EJB
§ Intégration d'une application en technologie EJB à une application legacy existante
Pré-requis :
Pour tirer pleinement profit de ce cours, les participants doivent :
§ Maîtriser le langage de programmation Java
§ Avoir une expérience en matière de création d'applications J2EE simples utilisant les beans session ou entité (expérience pratique requise, connaissances théoriques insuffisantes) et maîtriser les questions traitées dans le cours FJ-310 'Développement d'applications pour la plate-forme J2EE' .
§ Maîtriser les concepts de l'informatique distribuée de la technologie Java (RMI [Remote Method Invocation], JNDI [Java Naming and Directing Interface], API [Application Programming Interface], IDL [Interface Definition Language] Java).
§ Connaître quelques concepts de programmation déclarative utilisés dans la technologie J2EE.
§ Avoir une expérience pratique d'un serveur d'applications basé sur la technologie J2EE.
Cours précédents
FJ-310: Développement d'applications pour la plate-forme J2EE (FJ-310)
SL-275: Maîtrise de la programmation en langage Java (SL-275)
Cours suivants
SL-425: Architecture et conception d'applications J2EE (SL-425)
SL-500: Patterns J2EE (SL-500)
Contenu :
Examen des composants EJB
§ Décrire les interfaces clients des composants EJB
§ Comparer les types de composants EJB
§ Décrire les caractéristiques des beans session
§ Décrire les caractéristiques des beans entité
§ Décrire le cycle de vie des beans entité et des beans session sans état et avec état.
§ Décrire les méthodes de rappel des conteneurs pour les beans session et les beans entité
Empaquetage et déploiement de composants EJB
§ Examiner le processus d'empaquetage et de déploiement d'une application EJB
§ Créer les fichiers JAR d'archivage des composants EJB
§ Créer le fichier d'archivage client d'application préliminaire (JAR client initial)
§ Créer le fichier d'archivage d'application déployable (application EAR)
§ Déployer des applications créées en technologie J2EE (applications J2EE)
§ Examiner les problèmes de déploiement spécifiques au vendeur
Introduction à l'application de vente aux enchères
§ Décrire l'application de vente aux enchères
§ Définir les objets domaines de l'application de vente aux enchères
§ Décrire la mise en oeuvre d'un modèle de système de vente aux enchères
Implémentation de CMP (Container-Managed Persistence) EJB 2.0
§ Modèle de données métier
§ Implémenter EJB 2.0 CMP
§ Décrire des exemples de codes CMP
Implémentation de relations gérées par le conteneur (CMR)
§ Modéliser des relations métier dans le modèle de données
§ Modéliser des relations métier dans le modèle objet
§ Définir les relations
§ Implémenter une relation one-to-one (un-un) CMR
§ Implémenter une relation many-to-many (n à m) CMR
§ Changer les entités de partenaires dans CMR
Utilisation du langage EJB QL (EJB Query Language)
§ Implémenter des méthodes de localisation (finder)
§ Implémenter des méthodes de sélection (select) EJB
§ Implémenter des méthodes home
§ Écrire des requêtes en langage EJB QL
Développement d'applications J2EE utilisant la messagerie
§ Décrire les rôles des participants dans le système de messagerie de l'API JMS
§ Écrire un producteur de messages
§ Écrire un écouteur de messages asynchrone
§ Écrire un écouteur de messages synchrone
§ Énumérer les capacité de messagerie et les limitations des beans session, entité et pilotés par message
Développement de beans pilotés par message
§ Décrire les propriétés et le cycle de vie des beans pilotés par message
§ Créer un bean piloté par message JMS
§ Créer un bean piloté par message non-JMS
Implémentation de transactions
§ Décrire la tâche de démarcation des transactions
§ Implémenter des transactions gérées par un conteneur (CMT : Container-Managed Transactions)
§ Interagir par programme avec une transaction CMT en cours
§ Implémenter des transactions gérées par un conteneur (BMT : Bean-Managed Transactions)
§ Appliquer des transactions à la messagerie
Traitement des exceptions
§ Introduire des exceptions dans des applications J2EE
§ Décrire le chemin des exceptions dans un environnement d'applications J2EE
§ Décrire le traitement des exceptions d'un conteneur EJB
§ Traiter les exceptions dans une méthode de beans enterprise
§ Traiter les exceptions dans un code client bean
§ Examiner les questions spécifiques relatives au traitement des exceptions dans des applications en technologie EJB
Utilisation des services de Timer
§ Créer une notification de rappel Timer
§ Traiter une notification de rappel Timer
§ Gérer des objets Timer
Implémentation de la sécurité
§ Comprendre l'architecture de sécurité J2EE
§ Authentifier l'appelant
§ Examiner des stratégies d'autorisation J2EE
§ Utiliser une autorisation déclarative
§ Utiliser une autorisation programmatique
§ Examiner les responsabilités du déployeur
§ Examiner les conditions requises pour les modules de connectivité EIS
§ Comparer les différentes implémentations de modules de connectivité EIS
§ Décrire architecture du connecteur en technologie J2EE
§ Utiliser les interfaces de l'API CCI (Common Client Interface)
§ Utiliser un adaptateur de ressource d'un bean piloté par message
§ Décrire interopérabilité entre la technologie EJB et les protocoles CORBA (Common Object Request Broker Architecture)
Implémentation d'interface de endpoint de services Web
§ Examiner le modèle d'implémentation d'un service web EJB
§ Implémenter des services Web en utilisation des beans session sans état
Utilisation des meilleures pratiques de la technologie EJB
§ Définir les meilleures pratiques et indiquer les avantages de l'utilisation des meilleures pratiques de la technologie EJB
§ Sélectionner et appliquer des modèles connus à la conception d'applications J2EE