Stage pratique de 3 jour(s) Réf : OSG Java OSGi, développement d'applications modulaires Participants Ce stage vous apprendra à maîtriser le standard OSGi afin de concevoir des applications Java modulaires et évolutives. Vous découvrirez les principaux éléments d'une architecture OSGi et verrez comment remédier aux problématiques récurrentes de gestion de versions, de résolution des dépendances et de déploiement. Développeurs, chefs de projets et architectes. Pré-requis OBJECTIFS PEDAGOGIQUES Bonnes connaissances du langage Java. Expérience requise en programmation Java EE. Mettre en œuvre OSGi dans le cadre du développement d'une application Java/Java EE modulaire. Installer et utiliser une implémentation du Framework OSGi Créer, déployer et exécuter des bundles dans un conteneur OSGI. Implémenter et utiliser des services OSGi standards, spécifiques ou accessibles à distance Déployer dynamiquement une application Java EE dans Spring Dynamic Modules. Modalités d’évaluation L’évaluation des acquis se fait tout au long de la session au travers des multiples exercices à réaliser (50 à 70% du temps). 1) Présentation de la spécification OSGI 2) Les implémentations OSGi existantes 3) La gestion des bundles 4) Le cycle de vie des bundles 5) Les services OSGi 6) Guide des bonnes pratiques 7) Utilisation distante 8) Spring Dynamic Modules for OSGi Service Platforms Travaux pratiques Les concepts OSGi seront illustrés au travers d'Eclipse, de Spring Dynamic Modules et des Framework OSGI Apache Felix et Eclipse Equinox. Compétences du formateur Les experts qui animent la formation sont des spécialistes des matières abordées. Ils ont été validés par nos équipes pédagogiques tant sur le plan des connaissances métiers que sur celui de la pédagogie, et ce pour chaque cours qu’ils enseignent. Ils ont au minimum cinq à dix années d’expérience dans leur domaine et occupent ou ont occupé des postes à responsabilité en entreprise. Moyens pédagogiques et techniques • Les moyens pédagogiques et les méthodes d'enseignement utilisés sont principalement : aides audiovisuelles, documentation et support de cours, exercices pratiques d'application et corrigés des exercices pour les stages pratiques, études de cas ou présentation de cas réels pour les séminaires de formation. • A l'issue de chaque stage ou séminaire, ORSYS fournit aux participants un questionnaire d'évaluation du cours qui est ensuite analysé par nos équipes pédagogiques. • Une feuille d’émargement par demi-journée de présence est fournie en fin de formation ainsi qu’une attestation de fin de formation si le stagiaire a bien assisté à la totalité de la session. 1) Présentation de la spécification OSGI - Les limites actuelles des applications Java. - La modularité des applications. - La notion de conteneur et de bundle (composant) OSGi. - Le modèle en couche (Module, Lifecycle, Service). 2) Les implémentations OSGi existantes - Des outils : Eclipse Equinox, Apache Felix... - Présentation des projets s'appuyant sur OSGI : Eclipse, Jboss, ServiceMix... Travaux pratiques Installation d'une implémentation du Framework OSGi. Utilisation de la console d'administration. 3) La gestion des bundles - Mise en oeuvre des bundles dans un conteneur. - Le fichier MANIFEST.MF et sa syntaxe. - La gestion des dépendances. - Les chargeurs de classe. La sécurité. - La notion de package. La visibilité des composants. 4) Le cycle de vie des bundles - Les différents états (installed, resolved, active, ...). - Initialisation et interaction avec le conteneur OSGI. - API standardisées : BundleActivator, BundleContext... Travaux pratiques Création et exécution d'un bundle avec Eclipse. Exécution sur serveur OSGi standalone. 5) Les services OSGi - Les services standard d'OSGi. - Les services systèmes : Logging, IO, Connector... - Les services liés aux protocoles : http Services... - Les services divers : Wire Admin, XML parser. - Mise en application des services. La gestion des services : enregistrement et mise à disposition. - API standardisées : ServiceRegistration, ServiceReference, ServiceTracker, ... - Apache Felix, Equinox OSGi, Spring OSGi ... Travaux pratiques Implémentation et usage de services OSGi standard et spécifiques. 6) Guide des bonnes pratiques - Directives de codage et règles syntaxiques. - Les recommandations liées aux différentes couches : Module, LifeCycle, Service. ORSYS, La Grande Arche, Paroi Nord, 92044 Paris La Défense cedex. Tél : +33 (0)1 49 07 73 73. Fax : +33(0)1 49 07 73 78 page 1 7) Utilisation distante - Distributed OSGi versus Remote OSGi. - Import/export de code. Contrainte temporelle sur l'appel de méthodes distantes. Intégration dans un bus applicatif ESB. Travaux pratiques Mise en oeuvre d'Apache CXF Distributed OSGi ou de Remote OSGi. 8) Spring Dynamic Modules for OSGi Service Platforms - OSGi dans Spring. - Les apports en matière de déploiement. - Extension du Framework Spring DM : les annotations. Travaux pratiques Déploiement dynamique d'une application Web dans Spring DM. ORSYS, La Grande Arche, Paroi Nord, 92044 Paris La Défense cedex. Tél : +33 (0)1 49 07 73 73. Fax : +33(0)1 49 07 73 78 page 2