Ein OSGi-Bundleprojekt ist eine Java™-Archivdatei, die Java-Code, Ressourcen und ein Manifest enthält, das das Bundle und seine Abhängigkeiten beschreibt. Ein OSGi-Bundle enthält die Geschäftslogik und die Metadaten, die Sie für die Ausführung eines Service benötigen. Ein Bundle ist ein Modul in einer Anwendung, die auf einem Server implementiert ist.
Ein OSGi-Anwendungsprojekt gruppiert eine Reihe von Bundles, um eine kohärente Geschäftslogik zur Verfügung zu stellen. Die Anwendung kann sich aus verschiedenen Bundletypen, wie z. B. webfähigen Bundles und persistenzfähigen (JPA) Bundles, zusammensetzen.
In dieser Lerneinheit erstellen Sie ein OSGi-Bundle, das OSGi-Blueprintinformationen enthält, die einen Service definieren, der ein Pojo (Plain Old Java Object) bereitstellt. Ein POJO ist ein normales Java-Objekt im Gegensatz zu einem besonderen Java-Objekt, wie beispielsweise eine Enterprise-Entity-Bean.
Führen Sie zum Erstellen des Bundles CounterServiceBundle die folgenden Schritte aus:
Ihr OSGi-Bundle-Projekt wird erstellt und ein Bundlemanifest wird Ihrem Projekt hinzugefügt. Ihr OSGi-Anwendungsprojekt wird ebenfalls erstellt und Ihr Anwendungsmanifest wird dem Projekt hinzugefügt. Die in der Anwendungsmanifestdatei enthaltenen Metadaten ermöglichen dem OSGi-Framework die Verarbeitung der modularen Aspekte der Bundles. Weitere Informationen zu OSGi-Anwendungsmanifestdatei finden Sie unter Anwendungsmanifestdateien.
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CounterServiceBundle
Bundle-SymbolicName: CounterServiceBundle
Bundle-Version: 1.0.0
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Die in der OSGi-Bundlemanifestdatei enthaltenen Metadaten ermöglichen dem OSGi-Framework die Verarbeitung der modularen Aspekte des Bundles. Weitere Informationen zur OSGi-Bundlemanifestdatei finden Sie unter OSGi-Bundlemanifestdatei. Application-Name: CounterApp
Application-SymbolicName: CounterApp
Application-ManifestVersion: 1.0
Application-Version: 1.0.0
Manifest-Version: 1.0
Application-Content: CounterServiceBundle;version=1.0.0,
Application-SymbolicName ist der Name der OSGi-Anwendung. Application-Content listet die Bundlenamen mit dem zulässigen Bereich der OSGi-Versionsspezifikationen auf. In diesem Lernprogramm ist Version 1.0 oder höher für das Bundle CounterServiceBundle zulässig.
Weitere Informationen zu OSGi-Anwendungsmanifestdatei finden Sie unter Anwendungsmanifestdateien.
Sie haben das Bundle CounterServiceBundle und die Anwendung CounterApp erstellt.