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 8.1.
This specification is based on OSGi Core Release 8. 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/
-
Updated 705 Promises Specification.
-
Updated 125 Data Service Specification for JDBC™ Technology.
-
Updated 706 Push Stream Specification.
-
140 Jakarta Servlet Whiteboard updated for Jakarta EE and replaces the Http Whiteboard specification which is based upon the
javax
-namespace Servlet API. The old Http Service specification was also removed as it is based upon the old version 2.1 of thejavax
-namespace Servlet API. -
151 Jakarta RESTful Web Services Whiteboard updated for Jakarta EE and replaces the JaxRS Whiteboard specification which is based upon the
javax
-namespace JAX-RS API.