This compendium contains the specifications of all current OSGi services.
This specification is written for the following audiences:
-
Application developers
-
Framework and system service developers (system developers)
-
Architects
This specification assumes that the reader has at least one year of practical experience in writing Java programs. Experience with embedded systems and server-environments is a plus. Application developers must be aware that the OSGi environment is significantly more dynamic than traditional desktop or server environments.
System developers require a very deep understanding of Java. At least three years of Java coding experience in a system environment is recommended. A Framework implementation will use areas of Java that are not normally encountered in traditional applications. Detailed understanding is required of class loaders, garbage collection, Java 2 security, and Java native library loading.
Architects should focus on the introduction of each subject. This introduction contains a general overview of the subject, the requirements that influenced its design, and a short description of its operation as well as the entities that are used. The introductory sections require knowledge of Java concepts like classes and interfaces, but should not require coding experience.
Most of these specifications are equally applicable to application developers and system developers.
This document is the Compendium Specification for the OSGi Compendium Release 7.
This specification is based on the OSGi Core Release 7. This specification can be downloaded from:
https://docs.osgi.org/specification/
Components in this specification have their own specification version, independent of this specification. The following table summarizes the packages and specification versions for the different subjects.
Table 1.1 Packages and versions
When a component is represented in a bundle, a
version
attribute is needed in the declaration of the
Import-Package or Export-Package manifest headers.
[1]OSGi Specificationshttps://docs.osgi.org/specification/
-
Added Configurator Specification.
-
Added Push Stream Specification.
-
Added Converter Specification.
-
Updated Remote Services to define new intents.
-
Updated Log Service Specification to add new Loggers and LogStream service.
-
Updated Configuration Admin Service Specification to support new Configurator service.
-
Updated Metatype Service Specification to support enhancements to component property type naming.
-
Updated Declarative Services Specification to add new features including constructor injection.
-
Updated Event Admin Service Specification to add component property types and define capabilities.
-
Updated JPA Service Specification to add support for JPA 2.1 and other enhancements.
-
Updated Common Namespaces Specification to add an unresolvable namespace.
-
Updated Http Whiteboard Specification to add multipart configuration support, component property types and other enhancements.
-
Updated Promises Specification to support controlling executors and added new methods.
-
Resolver Service Specification moved to OSGi Core, Chapter 58.