Développement backend Java

OSGi

Objectifs

  • Comprendre les principes d'OSGi
  • Mettre en oeuvre OSGI en utilisant Eclipse pour le développement et les implémentations Equinox et Apache Felix pour l'exécution.

Programme

 

Présentation
  • Les problèmes de modularisation des applications Java (fichiers Jar, gestion des classloaders…)
  • La nécessité de réduire le couplage entre les composants
  • Périmètre d’OSGi
  • Principes de base d’OSGi : les bundles
  • OSGi et les architectures orientées services (SOA)
  • Les bundles
Structure d’un module
  • Le fichier MANIFEST.MF
  • Les interfaces BundleActivator et BundleContext
  • Utilisation d’Eclipse pour développer des bundles
  • Tester les bundles avec les implémentations Equinox et Felix
  • OSGi et la gestion des versions
  • Le cycle de vie d’un bundle
  • Réagir aux évènements sur un bundle
  • Chargement des classes et visibilité entre bundles
Les services OSGi
  • Architectures orientées services (SOA) et OSGi
  • Découplage entre fournisseur et utilisateur des services
  • Implémentation d’un service OSGi
  • Mise à disposition d’un service
  • Utilisation d’un service
  • Registre des services et suivi des modifications
  • Gestion complexe des liens entre services
  • Présentation et mise en oeuvre de Declarative Services
  • Modèles de conception Extender et Whiteboard
La spécification OSGi Enterprise
  • Présentation de la spécification Enterprise
  • Solutions proposées pour l’interaction entre OSGi et Java EE
  • Les services de base : Log, HTTP, Configuration Admin
  • Blueprint Service : appliquer les principes de Spring dans le monde OSGi
  • Intégration des applications Web Java EE dans un contexte OSGi : le format Web Application Bundle
  • JTA Service et JMX Service
  • JDBC Service et JPA Service
  • Les implémentations disponibles
  • Apache Aries et Karaf
  • Eclipse Equinox et Gemini
Please login to get access to the quiz
JPA Java Persistence API (Prev Lesson)
(Next Lesson) Eclipse RCP
Back to Développement backend Java
Public

<ul> <li>Architectes</li><li>Chefs de projets</li><li>Ingénieurs</li> </ul></div></div>

Pré-requis

Bonne pratique de Java