OSGi-Spezifikationen werden von der Open Service Gateway-Initiative, einer Organisation für offene Standards, definiert und verwaltet. Die Spezifikation entwirft offene Standards für Sprach-, Daten- und Mobil- und Festnetzunterstützung. Die OSGi Service Platform-Spezifikation definiert eine offene, einheitliche Architektur für Servicebereitstellung und -verwaltung mithilfe von Bundles.
Das OSGi Applications-Framework stellt ein Programmiermodell für die Entwicklung, Assemblierung und Implementierung von modularen Anwendungen als Bundles, die Java™ EE- und OSGi-Technoligie verwenden.
Weitere Informationen zur OSGi-Spezifikation finden Sie unter OSGi Alliance Specifications.
OSGi Specification Version 4.2 konzentriert sich auf OSGi für Java-Unternehmensanwendungen.
OSGi Spezification Version 4.2 enthält die Definition des Blueprint-Komponentenmodells, einer standardisierten Version des Spring-Framework-Assembliermodells. Das Blueprint-Komponentenmodell beschreibt, wie Komponenten in einem Bundle miteinander verbunden werden können und wie Konfigurationen und Abhängigkeiten von einem Blueprint-Komponentencontainer in der Laufzeitumgebung injiziert werden.
Komponenten und die Referenzen, die sie nutzen, werden in einer Blueprint-Datei für das XML-Modul deklariert, die eine Standardisierung des Spring-Anwendungskontextes ist. Diese Datei wurde für die OSGi-Umgebung so erweitert, dass Komponenten automatisch als Services für die Service-Registry veröffentlicht und Referenzen automatisch in Services aufgelöst werden können, die von der Service-Registry erkannt werden.
Das Blueprint-Komponentenmodell bietet die Einfachheit des Spring-Frameworks, einschließlich der Fähigkeit, Komponententests durchzuführen, die von der Serverumgebung getrennt sind. Blueprint standardisiert die Konfigurationsmetadaten und stattet daher die Spezifikation des Komponentenmodells mit Governance aus.