Formations au coeur des technologies
Essayer, tester, échanger les bonnes pratiques, partager les retours d'expériences, ...
toutes nos formations sont disponibles à distance (classes virtuelles) et en centre de formation (présentiel), au choix.
Vous pouvez même changer de modalité en cours de formation, si vous avez des contraintes : par exemple, commencer en présentiel et continuer les jours suivants à distance.
Les outils pédagogiques et l'infrastructure de travaux pratiques mis à disposition sont accessibles depuis nos locaux, ou depuis votre entreprise ou votre lieu de télétravail, à volonté
N'hésitez pas à tester nos formations et nos serious games !
Applications JEE avec Geronimo
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:AS105
Public
Développeurs et intégrateurs d'applications en modèle JEE.
Objectifs
Connaître l'architecture et les principes du serveur Geronimo. Savoir concevoir une application avec le modèle JEE, et la mettre en oeuvre avec Geronimo 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
Présentation
Geronimo :le positionnement, la certification JEE, la licence Apache. La version Little-G
Architecture :
les liens avec les autres projets openSource : Jetty, Tomcat, Derby, Axis, ...
les GBeans, gestion du cycle de vie des GBeans : le noyau Geronimo
Installation
Vérification des prérequis, installation. Variables d'environnement. Modes de démarrage du serveur.
Rappels sur le modèle JEE
les composants d'un serveur d'application JEE :
serveur HTTP, moteur de servlets, serveur d'EJB.
Terminologie: application web, container, sources de données, pilote JDBC, hôtes virtuels.
Visualisation dans la console Geronimo.
Déploiement d'une application simple. Recherche des contextes racines.
Outils
Les outils d'administration en mode commande et par la console.
Configuration de Services,
Mécanismes de connexion aux bases de données : JDBC, pool de connexions.
Configuration du service JMS
Servlets, pages JSP
pages HTML dynamiques, communication avec bases de données et applications Java, communication avec d'autres servlets
Liens avec Tomcat et/ou Jetty
Installation et modification des paramètres de base
Activation du service.
Développement avec les EJB
Types d'EJB : EJB entité, EJB session, EJB Message-driven. Persistance et transactions.
Les 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: geronimo-application.xml, geronimo-web.xml, ...
Utilisation des annotations en remplacement du descripteur de déploiement. Simplification de la correspondance objet/relationnel.
Compatibilité ascendante. Déploiement des EJB3 sous Geronimo.
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. Transactions gérées par container.
Présentation JTA et JTS. 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 Geronimo et de la propagation du contexte transactionnel.
Sécurité
Présentation de JAAS. 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.
Sécurité. Mise en place d'une politique de sécurité lors du déploiement de l'application. Sécurité: JAAS, rôles, groupes de permissions.
CalendrierCode cours : AS105
Contenu de la formation