Eine Ressourcenreferenz unterstützt den Zugriff des von Anwendungen
auf eine Ressource (z. B. eine Datenquelle, einen URL oder einen Mail-Provider) durch Angabe
eines logischen Namens an Stelle des tatsächlichen Namens in der Laufzeitumgebung. Mit dieser Funktionalität
ist es nicht mehr erforderlich, Anwendungscode zu ändern, wenn die Laufzeitkonfigurationen von Ressourcen geändert werden.
Vorbereitende Schritte
Dieser Artikel führt Sie durch die Aktualisierung der Ressourcenreferenzen einer
Unternehmensanwendung, die Sie zuvor assembliert haben. Im Artikel
"Anwendungen assemblieren" wird die Assemblierungsprozedur detailliert beschrieben.
Informationen zu diesem Vorgang
Ressourcenreferenzen werden im Implementierungsdeskriptor vom
Anwendungsprovider deklariert. Während der Anwendungsimplementierung müssen Sie die Ressourcenreferenz
an den tatsächlichen Namen der Ressource in der Laufzeitumgebung binden. Wenn Sie eine
Verbindungsfactory oder eine Datenquelle im Anwendungsserver erstellen, stellt der Anwendungsserver
einen JNDI-Namen bereit, den eine Komponente verwenden kann, um auf die Verbindungsfactory bzw.
Datenquelle zuzugreifen.
Der Anwendungsserver verwendet einen indirekten Namen mit dem Präfix "java:comp/env".
Beispiele:
- Wenn Sie eine Datenquelle erstellen, wird der JNDI-Standardname auf "jdbc/Name_der_Datenquelle" gesetzt.
- Wenn Sie eine Verbindungsfactory erstellen, ist der Standardname "eis/Name_der_J2C-Verbindungsfactory".
Wenn Sie diese Werte durch eigene Angaben
überschreiben, müssen Sie das Präfix "java:comp/env" beibehalten.
Ein indirekter JNDI-Name ermöglicht der Infrastruktur für die Verbindungsverwaltung
auf alle Daten über eine Ressourcenreferenz zuzugreifen, die der Anwendung zugeordnet ist.
Dies ermöglicht Ihnen eine effizientere Verwaltung von Ressourcen auf der Basis
der Einstellungen für Authentifizierung, Isolationsstufe, Geltungsbereich der gemeinsamen Nutzung und
Auflösungssteuerung.
In diesem Artikel wird beschrieben, wie Sie die Ressourcenreferenzen einer Unternehmensanwendung mit einem Assembliertool
aktualisieren.
Nach der Definition der Ressourcenreferenz können Sie indirekte JNDI-Lookup-Operationen
über den Kontext "java:comp/env" durchführen.
Vorgehensweise
- Starten Sie ein Assembliertool.
- Konfigurieren Sie das
Assembliertool, falls noch nicht geschehen, für Java-EE-Module.
- Importieren Sie die Unternehmensanwendung (EAR-Datei), die Sie ändern möchten, in das EJB-Projekt.
- Gehen Sie wie folgt vor, um die Ressourcenreferenzen für den Typ des Moduls anzuzeigen:
- Wenn die Ressourcenreferenz von einer Enterprise-Bean verwendet wird:
- Klicken Sie auf den Namen der EAR-Datei.
- Klicken Sie auf EJB Modules.
- Klicken Sie auf das gewünschte EJB-Modul.
- Klicken Sie auf den Typ der Enterprise-Bean (Session-Beans oder Entity-Beans).
- Klicken Sie auf die Enterprise-Bean.
- Wenn die Ressourcenreferenz von einem Servlet verwendet wird:
- Klicken Sie auf den Namen der EAR-Datei.
- Klicken Sie auf Web Modules.
- Blenden Sie das gewünschte Webmodul ein.
- Wenn die Ressourcenreferenz von einem Anwendungsclient verwendet wird:
- Klicken Sie auf den Namen der EAR-Datei.
- Klicken Sie auf Application Clients.
- Klicken Sie auf das gewünschte Application-Client-Modul.
- Klicken Sie mit der rechten Maustaste auf das Modul, dessen Ressourcenreferenzen Sie ändern möchten, und klicken Sie anschließend auf
Open With > Deployment Descriptor Editor.
- Klicken Sie für Servlets und Anwendungsclients auf Add. Wählen Sie für EJB-Module
die gewünschte Bean aus, und klicken Sie auf Add.
- Wählen Sie die Ressourcenreferenzoption aus, und klicken Sie auf Next.
- Geben Sie die Einstellungen für die Ressourcenreferenz an, und klicken Sie auf Finish.
- Optional: Wählen Sie das Register References und anschließend unter WebSphere
Extensions eine Isolationsstufe aus. Wenn diesen Schritt überspringen,
wird standardmäßig die Isolationsstufe TRANSACTION_NONE verwendet.
- Optional: Geben Sie unter WebSphere Bindings einen JNDI-Namen ein. Wenn Sie diesen Schritt überspringen, können Sie die Bindung bei der Implementierung der Anwendung
definieren (oder überschreiben).
- Schließen Sie den Editor für Implementierungsdeskriptoren, und speichern Sie Ihre Änderungen.
Ergebnisse
Dateien für das aktualisierte Modul werden in der Ansicht "Project Explorer" angezeigt.
Nächste Schritte
Überprüfen Sie den Inhalt der aktualisierten Unternehmensanwendung in der Ansicht "Project Explorer".
Implementieren Sie anschließend Ihre Unternehmensanwendung.
Sie können in einem Schritt EJB-Implementierungscode generieren und das Modul
in einem Zielserver implementieren.
Klicken Sie in der Ansicht "Project Explorer" mit der rechten Maustaste auf das EJB-Projekt, und klicken Sie dann
auf Deploy. Sehen Sie sich auch den Artikel "EJB-Module implementieren" an.