Der nachrichtengesteuerte Deskriptor konfiguriert das Ziel für den Nachrichten-Listener. Eine Nachrichtenzielreferenz ist ein logischer Name, der verwendet wird, um eine Enterprise-Bean in einem EJB-Modul zu suchen, das als Nachrichtenziel fungiert. Nachrichtenzielreferenzen sind nur in Artefakten der J2EE Version 1.4 und höher vorhanden, wie z. B.:
Wenn einer einzigen Nachrichtenzielverbindung mehrere Nachrichtenzielreferenzen zugeordnet sind,
wird während der Implementierung ein einziger JNDI-Name für eine Enterprise-Bean erfasst, der der Nachrichtenzielverbindung
und anschließend allen verbundenen Nachrichtenzielreferenzen zugeordnet wird. Zur Laufzeit werden die Nachrichtenzielreferenzen an die verwalteten Nachrichtenziele in der Zielbetriebsumgebung gebunden.
Wenn eine Nachrichtenzielreferenz und eine nachrichtengesteuerte Bean (MDB, Message-driven Bean) über dasselbe Nachrichtenziel verbunden sind, müssen Referenz und
Bean denselben Ziel-JNDI-Namen haben. Haben Referenz und Bean denselben Namen, wird nur der Ziel-JNDI-Name für die MDB erfasst und auf die entsprechende
Nachrichtenzielreferenz angewendet.
Wenn ein Implementierer sich dazu entschließt, bei der Installation der Anwendung Standardbindungen zu generieren,
ordnet der Installationsassistent den folgenden unvollständigen Nachrichtenzielreferenzen JNDI-Namen zu:
Wenn eine Nachrichtenzielreferenz einen < message-destination-link> -Link hat, wird der JNDI-Name auf
ejs/message-destination-linkName
Andernfalls wird der JNDI-Name auf
eis/message-destination-refName
.
Diese Regel erkennt Ziel-JNDI-Namen für MDBs. Es wird ein automatisierter Fix bereitgestellt, um den Ziel-JNDI-Namen aus der Datei jboss.xml in die traditionelle WebSphere oder Liberty Bindungsdatei zu kopieren. Sie müssen den ActivationSpec JNDI-Namen festlegen und die Eigenschaften der Aktivierungskonfiguration in die ejb-jar.xml migrieren.
Bei der Migration von Message-driven Beans auf Liberty stehen drei Verbindungsoptionen zur Verfügung: IBM MQ, der JCA-Ressourcenadapter und der integrierte Messaging-Server. Weitere Informationen finden Sie im Weitere Informationen zu diesen Optionen finden Sie in der Dokumentation.
Ein Anwendungsentwickler kann Bindungsdefinitionen in den Dateien ibm-xxx-bnd.xml für Module der EJB Version 3.0 und der Web Version 2.5 und in den Dateien ibm-xxx-bnd.xmi für Module vor Java(R) Platform, Enterprise Edition (Java EE) 5 erstellen. Der Anwendungsentwickler kann die Dateien mit einem Tool wie IBM(R) Rational(R) Developer bzw. für Module der EJB Version 3.0 oder der Web Version 2.5 mit einem XML-Editor oder Texteditor erstellen. Der Entwickler übergibt anschließend eine Unternehmensanwendung (Datei mit der Erweiterung .ear), die mit den Bindungen vervollständigt wurde, an einen Anwendungsassemblierer oder -implementierer. Der Assemblierer wird die Bindungen beim Assemblieren der Anwendung nicht ändern. Wenn die Anwendung auf einem Server installiert wird, die von WebSphere Application Server unterstützt wird, ändert oder überschreibt der Implementierer die Bindungen bzw. generiert er Standardbindungen nur dann, wenn Änderungen an den Bindungen für eine erfolgreiche Implementierung der Anwendung erforderlich sind.
Gehen Sie wie folgt vor, um die erforderlichen Änderungen in Rational Application Developer für Beans der EJB Version 2.1 vorzunehmen:Ein Anwendungsassemblierer kann Bindungen in Annotationen oder Implementierungsdeskriptoren einer Anwendung definieren. Module der Java EE Version 5 können Annotationen im Quellcode enthalten. Zum Deklarieren einer Annotation stellt ein Anwendungsassemblierer einem Schlüsselwert das Zeichen @ voran. Bindungen für Module mit einer Version vor Java EE 5 werden im Abschnitt "WebSphere-Bindungen" eines Editors für Implementierungsdeskriptoren angegeben. Durch die Modifikation der Implementierungsdeskriptoren können sich die Bindungsdefinitionen in den Bindungsdateien ändern, die beim Entwickeln einer Anwendung erstellt werden. Nachdem die Bindungen definiert wurden, übergibt der Assemblierer die Anwendung an einen Implementierer. Wenn die Anwendung auf einem Server installiert wird, die von WebSphere Application Server unterstützt wird, ändert oder überschreibt der Implementierer die Bindungen bzw. generiert er Standardbindungen nur dann, wenn Änderungen an den Bindungen für die Implementierung der Anwendung erforderlich sind.
Ein Anwendungsimplementierer oder Serveradministrator kann die Bindungen ändern, wenn er die Anwendung über die Administrationskonsole
auf einem von WebSphere Application Server unterstützten Server installiert. Neue Bindungsdefinitionen können auf den Seiten des
Installationsassistenten angegeben werden.
Außerdem kann ein
Implementierer oder Administrator festlegen, dass die Standardbindungen während der Anwendungsinstallation generiert werden.
Durch Auswahl der Option für die Generierung von Standardbindungen während der Anwendungsinstallation wird das Produkt
angewiesen, die Bindungen in der Anwendung mit den Standardwerten zu vervollständigen. Vorhandene Bindungen werden nicht geändert.
Einschränkung: Die Bindungen für Anwendungsclients können während der Anwendungsinstallation weder definiert noch überschrieben werden.
Sie müssen die Bindungen für Anwendungsclientmodule während der Assemblierung definieren und anschließend in der
Bindungsdatei speichern.
Der Installation einer Anwendung auf einem von WebSphere Application Server unterstützten Server kann ein Anwendungsimplementierer oder Serveradministrator die Bindungen modifizieren, indem er Werte auf den Seiten der Administrationskonsole ändert, die über die Einstellungsseite für die Unternehmensanwendung aufgerufen werden.