Applications JEE avec JBoss

DATES_1:Du 25 au 29 Janvier
DATES_1:du 29 Mars au 2 Avril
DATES_1:du 7 au 11 juin
DATES_2:du 30 Août au 3 Septembre
DATES_2:du 25 au 29 Octobre
DATES_2:du 6 au 10 Décembre
CODE:AS104

Public


Développeurs et intégrateurs d'applications en modèle JEE.

Objectifs


Connaître l'architecture et les principes du serveur JBoss. Savoir concevoir une application avec le modèle JEE, et la mettre en oeuvre avec Jboss et Tomcat.

Préalables


Il est demandé aux participants de connaître la programmation Java, ainsi que les techniques Internet (serveur HTTP, HTML,...) et quelques notions de bases de données.

Programme


JBoss


Présentation. L'architecture Jboss : le noyau, la couche services, la couche présentation, la couche application, le principe JMX et les Mbeans. Installation, configuration.

Le modèle JEE


Composants d'un serveur d'application JEE: serveur HTTP, moteur de servlets, conteneur d'EJB.
Positionnement des outils : Jboss, Tomcat, Apache, ...
Terminologie: application web, conteneur, sources de données, pilote JDBC, hôtes virtuels.

Servlets, pages JSP


pages HTML dynamiques, communication avec des bases de données, applications Java, inter-servlets

Développement


Composants d'une application d'entreprise: .ear, .jar, .rar, .war
Outils d'assemblage d'applications: ant, plugins, ...
Regroupement de composants unitaires en une application. Création d'une application sur-mesure (créer un .ear, .war, ...).

EJB


Types d'EJB : EJB entité, EJB session, EJB Message-driven. Persistance et transactions.
Annotations spécifiques EJB 3. Annotations et génériques. Principes de mise en oeuvre des EJB3.
Fichiers de description en XML. Les fichiers spécifiques: jboss.xml, jboss-web.xml, ...
Annotations en remplacement du descripteur de déploiement. Simplification de la correspondance objet/relationnel.
Compatibilité ascendante. Les EJB3 sous JBoss.

EJB Session


EJB stateless, stateful. Notion de conversation. Fichiers de déploiement. Contraintes de conversation. Transactions.
Dépendance d'injection. Intercepteurs de méthodes métier.
Application: création d'un EJB stateless "Conversion de devises", création d'un EJB stateful "Caddie"

EJB Entité


Persistance avec les EJB. Fichiers de déploiement. Définition des clés primaires. Définition des méthodes de recherche (query). Gestion des jointures en EJB3.
Les fichiers de persistance. Méthodes d'accès: FIELD/PROPERTY. Mapping par défaut. Utilisation de l'EntityManager.
Relations entre EJB (one-one,one-many,many-many). Le langage EJB-QL
Héritage. Synchronisation avec la base de données, détachement/attachement.
Correspondance objet/relationnel sous JBoss: jbosscmp-jdbc.xml.
Application: création d'une application utilisant des jointures Many/Many

EJB MessageDriven


Développement de composants orientés message
Principe des MOM (Middlewares Orientés Message). Présentation de JMS.
Développement d'un EJB Message Driven (MDB).
L'interface JMS MessageListener. Traitement asynchrone. La méthode onMessage(). Fichiers de déploiement.
Cycle de vie des MDB. Gestion des erreurs.

Transactions


Les transactions distribuées: commit à deux phases.
Utilisation de JTA, JTS. Transactions explicites ou gérées par container. Annotations de transaction.
Gestion des exceptions dans un contexte transactionnel.
Mise en oeuvre d'une application EJB3 transactionnelle. Mise en évidence du retour arrière déclenché par le conteneur JBoss et de la propagation du contexte transactionnel.

Sécurité


JAAS: rôles, groupes de permissions. Mise en oeuvre dans le conteneur d'EJB. Rôles et permissions sur les méthodes. Intégration de la sécurité dans le serveur d'applications.
Mise en place d'une politique de sécurité lors du déploiement de l'application.
Mise en oeuvre d'une application en cluster.


Pythagore F.D.
01 55 33 52 10
pfd@pythagore-fd.fr

Nos centres de connexion
Centres de connexion
Calendrier
Code Cours:AS104

Contenu de la formation