OSGi Framework I. (OSGI1)

Programming, Java, Spring

This course introduces Java developers to the OSGi framework, covering its core concepts and runtime behavior. You will learn the principles of modularity, how bundles interact and how services enable dynamic composition of applications.

The course assumes advanced knowledge of Java and basic multithreading, and offers hands-on practice with lifecycle, configuration and service patterns. Web topics include HTTP whiteboard and integration with Servlet APIs for real apps.

THIS TRAINING COURSE WILL HELP YOU:

  • Implement modular OSGi applications using bundles and services.
  • Manage bundle lifecycle and service dynamics at runtime.
  • Apply semantic versioning and modular classloading concepts.
  • Use Declarative Services, Blueprint and tracker patterns.
  • Integrate web support with HTTP whiteboard and Servlet APIs.

WHO SHOULD ATTEND?

  • Java developers building modular server applications.
  • Engineers familiar with Java multithreading.
  • Architects evaluating modular Java frameworks.

COURSE LOCATION AND AVAILABLE DATES



This course is not scheduled as a public course.
It is delivered exclusively as customised training. The content, duration, date, and delivery format are tailored to the customer's requirements and can also be provided in English.

Request customised training

Course content:

Hide details
  • Characteristics of the OSGi framework
    1. Issues in modularity and service-oriented design
    2. Semantic versioning
    3. History, philosophy and roots of OSGi
    4. Comparison with other frameworks (JEE/Spring, Jigsaw)
  • OSGi framework architecture
    1. Key terms and definitions
    2. Overview of layers and their interactions
  • Modular layer
    1. Bundle and its structure
    2. Wiring: importing/exporting packages and versioning
    3. Class loading in general and OSGi class loading architecture
    4. Fragment bundles
  • Lifecycle and its management
    1. Starting a framework instance, embedding
    2. Bundle lifecycle
    3. Bundle and BundleContext interfaces
    4. System events
  • Service support
    1. Service concept and registration
    2. Service lifecycle
    3. Service support APIs
  • Tracker API
  • Service configuration support
  • High-level service support
    1. Declarative Services
    2. Blueprint Container
  • Common patterns
    1. Extender pattern
    2. Whiteboard pattern
  • Web support
    1. Web Applications
    2. HTTP Whiteboard
    3. HTTP Service
  • Miscellaneous / Other topics
    1. OSGi framework implementations
    2. Tools and techniques for development
    3. Practical exercises
    4. Additional topics and possibilities
Prerequisites:
Advanced Java knowledge, including basic multithreading, is required.
Recommended previous course:
Java: Concurrent Programming (JAV4)
Schedule:
3 days (9:00-17:00)
Price per person:
752.00 € ( 909.92 € incl. 21% VAT)

Training and learning environment