Description
During this internship, you will learn to master the OSGi standard, which allows you to design modular and scalable Java applications. You will discover the key elements of an OSGi architecture and learn how to resolve common issues related to versioning, dependency resolution, and deployment. This hands-on training will provide you with the skills needed to build flexible and scalable applications with OSGi.
Who is this training for ?
For whom ?
Developers, project managers and architects.
Prerequisites
Good knowledge of the Java language. Experience required in Java EE programming.
Training objectives
Training program
- Overview of the OSGI specification
- The current limits of Java applications.
- The modularity of applications.
- The concept of container and bundle (component) OSGi.
- The layered model (Module, Lifecycle, Service).
- Existing OSGi implementations
- Tools: Eclipse Equinox, Apache Felix.
- Presentation of projects based on OSGI: Eclipse, Jboss, ServiceMix.
- Practical work Installation of an OSGi Framework implementation.
- Using the administration console.
- Bundle management
- Implementing bundles in a container.
- The MANIFEST file.
- MF and its syntax.
- Dependency management.
- Class loaders.
- Security.
- The concept of packages.
- The visibility of components.
- The bundle lifecycle
- The different states (installed, resolved, active, .
- ).
- Initialization and interaction with the OSGI container.
- Standardized APIs : BundleActivator, BundleContext.
- Practical work Creation and execution of a bundle with Eclipse.
- Execution on a standalone OSGi server.
- OSGi services
- OSGi standard services.
- System services: Logging, IO, Connector.
- Protocol-related services: http Services.
- Miscellaneous services: Wire Admin, XML parser.
- Implementation of services.
- Service management: recording and provision.
- Standardized APIs: ServiceRegistration, ServiceReference, ServiceTracker, .
- Apache Felix, Equinox OSGi, Spring OSGi .
- Practical work Implementation and use of standard and specific OSGi services.
- Guide to good practices
- Coding guidelines and syntactic rules.
- Recommendations related to the different layers: Module, LifeCycle, Service.
- Remote use
- Distributed OSGi versus Remote OSGi.
- Import/export of code.
- Timing constraint on calling remote methods.
- Integration into an ESB application bus.
- Practical work Implementation of Apache CXF Distributed OSGi or Remote OSGi.
- Spring Dynamic Modules for OSGi Service Platforms
- OSGi in Spring.
- Contributions in terms of deployment.
- Extension of the Spring DM Framework: annotations.
- Practical work rnDynamic deployment of a web application in Spring DM.