Sie können EJBs in OSGi-Bundles einschließen und EJBs als OSGi-Service verfügbar machen.
Vorgehensweise
- Konfigurieren Sie ein OSGi-Bundle für EJB-Unterstützung. Es gibt zwei primäre Methoden, um ein OSGi-Bundle für EJB-Unterstützung zu konfigurieren:
- EJB-Projekt in ein OSGi-Bundleprojekt konvertieren
- Wenn Sie ein EJB-Projekt in ein OSGi-Bundleprojekt konvertieren möchten, klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie aus. Nach der Konvertierung des EJB-Projekts wird die OSGi-Bundlefacette dem Projekt hinzugefügt und es wird eine Bundlemanifestdatei erstellt.
- EJB-Unterstützung beim Erstellen eines OSGi-Bundles hinzufügen
- Sie können beim Erstellen eines OSGi-Bundles EJB-Unterstützung hinzufügen. Klicken Sie zum Hinzufügen von EJB-Unterstützung auf . Wählen Sie im Bundleprojektassistenten den Eintrag EJB-Unterstützung hinzufügen aus und wählen Sie die EJB-Stufe aus, die Sie verwenden möchten.
Mit diesen beiden Methoden wird der Bundlemanifestdatei ein Header "Export-EJB" hinzugefügt. EJBs, die Sie als Services verfügbar machen möchten, können neben diesem Header aufgelistet werden.
- Verwalten Sie EJB-Exporte. Um die EJBs zu steuern, die Sie als OSGi-Service verfügbar machen möchten, klicken Sie mit der rechten Maustaste auf das OSGi-Bundleprojekt und wählen Sie aus. Wählen Sie im Dialog "EJB-Exporte verwalten", der daraufhin geöffnet wird, die EJBs aus, die Sie als Services verfügbar machen möchten.
- Erläuterung zum Verständnis der Manifestdatei. Klicken Sie in einem Bundleprojekt doppelt auf die Manifestdatei, um sie im Manifesteditor zu öffnen. Wählen Sie das Register MANIFEST.MF aus, um die Quelle der Manifestdatei anzuzeigen. OSGi-Bundleprojekte mit EJB-Unterstützung haben enthalten Header "Export-EJB". EJBs werden in Form einer durch Kommas getrennten Liste eingegeben. Dieses Beispiel zeigt zwei als Services exportierte EJBs:
Export-EJB: EJB1,EJB2
Anmerkung: Es gibt zwei Sonderfälle im Hinblick auf den Header "Export-EJB", die Sie kennen sollten:
- NONE
- Wenn Sie als Eintrag für den Header "Export-EJB" NONE angeben, werden keine EJBs als Services bereitgestellt. Wenn Sie jedoch NONE angeben und außerdem eine EJB der Liste hinzufügen, wird von den Tools eine Warnung angezeigt.
- Leer
- Wenn Ihr Manifest einen Header "Export-EJB" enthält, jedoch keine Einträge vorhanden sind, werden standardmäßig alles EJBs im Projekt als Services bereitgestellt.
- Fügen Sie EJBs automatisch hinzu oder löschen Sie sie automatisch. Standardmäßig wird der EJB-Eintrag automatisch hinzugefügt bzw. automatisch aus dem Header "Export-EJB" in der Manifestdatei entfernt, wenn Sie EJBs einem OSGi-Bundleprojekt mit EJB-Unterstützunghinzufügen bzw. aus diesem löschen.