Pythagore F.D. apprendre à apprendre

Formation: Applications JEE avec JBoss

Dates:
du 18 au 22 Juin
du 10 au 14 Septembre
du 12 au 16 Novembre

(cliquez sur une date pour vous inscrire)

Durée:
5 jours
Prix:
2315 €
Code cours:
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.

Connaissances préalables nécessaires:
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 détaillé de la formation (logo acroreadTéléchargez le programme) :

Serveurs d'applications
Architecture des aplications web.
Jee et le modèle MVC.
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.

JBoss
Présentation. Le projet JBoss.
L'architecture Jboss : le noyau, la couche services, la couche présentation, la couche application, le principe JMX et les Mbeans.
L'implémentation JMX dans JBoss.
Installation, configuration.
Utilisation de la console JMX.

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, ...).
Déclaration d'une source de données.

Servlets, pages JSP
Cycle de vie des servlets, servlets thread-safe
Définition des JSP.
Liaison JSP/JavaBean.

JNDI
Inroduction,
présentation de l'API.
JNDI pour JEE.

Développement d'un EJB
Choix du modèle.
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.
Travaux pratiques : 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.
Travaux pratiques : 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.



(c) 2012 Pythagore F.D. Paris
Pour nous contacter:01 55 33 52 10 ou pfd@pythagore-fd.fr