Wenn für die Übertragung von Ereignissen nicht die Standard-Messaging-Komponente von WebSphere ESB verwendet werden soll, dann können Sie den asynchronen Transport von Nachrichten auch so konfigurieren, dass ein anderer JMS-Provider (JMS = Java Message Service) verwendet wird.
Bevor das Ereignis-Messaging für einen externen JMS-Provider konfiguriert werden kann, müssen Sie zuerst eine JMS-Warteschlange und eine JMS-Verbindungsfactory mit den entsprechenden Schnittstellen für Ihren JMS-Provider erstellen.
Das Script
event-message.jacl definiert alle Konfigurationsobjekte, die für die asynchrone Übertragung von Ereignissen mit einem externen JMS-Provider wie zum Beispiel WebSphere MQ erforderlich sind:
- Wenn ein Geltungsbereich angegeben ist, erstellt es ein JMS-Übertragungsprofil, das die angegebene JMS-Warteschlange und JMS-Verbindungsfactory verwendet.
- Es erstellt ein Emitter-Factory-Profil, das für die asynchrone Übertragung von Ereignissen das erstellte JMS-Übertragungsprofil verwendet.
- Es implementiert das nachrichtengesteuerte Bean, das durch die Common Event Infrastructure verwendet wird, damit es Ereignisse empfangen kann, die asynchron an den Ereignisserver gesendet werden, und einen Listener-Port oder eine JMS-Aktivierungsspezifikation verwendet.
Wenn Sie für den Ereignisserver mehrere JMS-Warteschlangen definieren möchten, dann können Sie dieses Script mehrmals ausführen, wobei Sie jeweils andere Namen für die Unternehmensanwendung und JMS-Warteschlangen angeben. Bei jedem Aufruf des Script implementiert es ein weiteres nachrichtengesteuertes Bean und konfiguriert neue Ressourcen, die die angegebene JMS-Warteschlange verwenden.
Gehen Sie wie folgt vor, um das Ereignis-Messaging für einen externen JMS-Provider zu konfigurieren:
- Wechseln Sie in das Verzeichnis $WAS_HOME/event/application für das Profil zur Definition der Laufzeitumgebung für WebSphere ESB, in der Sie das Standard-Messaging konfigurieren möchten. (Ersetzen Sie dabei profilpfad durch den Pfad zu dem Verzeichnis, in dem sich das Profil für WebSphere ESB befindet.)
- Führen Sie das Script event-message.jacl mit dem Befehl wsadmin aus:
- Windows-Systeme
%WAS_HOME%\bin\wsadmin -profile event-profile.jacl -f event-message.jacl
-action install -earfile event-message.ear -node knotenname
[-server servername] [cluster clustername]
-appname anwendungsname -qjndi warteschlange -qcfjndi verbindungsfactory
[-listenerport listener-port] [-activationspecjndi spezifikationsname]
[-eventprofilescope geltungsbereich] [-trace]
- Linux- und UNIX-Systeme
$WAS_HOME/bin/wsadmin -profile event-profile.jacl -f event-message.jacl
-action install -earfile event-message.ear -node knotenname
[-server servername] [cluster clustername]
-appname anwendungsname -qjndi warteschlange -qcfjndi verbindungsfactory
[-listenerport listener-port] [-activationspecjndi spezifikationsname]
[-eventprofilescope geltungsbereich] [-trace]
$WAS_HOME/bin/wsadmin -profile event-profile.jacl -f event-message.jacl
-action install -earfile event-message.ear -node knotenname
[-server servername] [cluster clustername]
-appname anwendungsname -qjndi warteschlange -qcfjndi verbindungsfactory
[-listenerport listener-port] [-activationspecjndi spezifikationsname]
[-eventprofilescope geltungsbereich] [-trace]
Für das Script
event-message.jacl werden die folgenden Parameter verwendet:
- knotenname
- Der WebSphere ESB-Knoten, in dem die Messaging-Anwendung implementiert werden soll. Gehen Sie wie folgt vor, um den Knotennamen zu bestimmen:
- Führen Sie das Script profilpfad/bin/setupCmdLine aus.
- Führen Sie den Befehl echo $WAS_NODE (Linux-/UNIX-Systeme) oder echo %WAS_NODE% (Windows-Systeme) aus.
Bei diesem Wert muss die Groß-/Kleinschreibung beachtet werden. Soll die Anwendung in einem Cluster implementiert werden, dann lassen Sie diesen Parameter weg.
- servername
- Der WebSphere-Server, in dem die Messaging-Anwendung implementiert werden soll.
Bei diesem Wert muss die Groß-/Kleinschreibung beachtet werden. Soll die Anwendung in einem Cluster implementiert werden, dann lassen Sie diesen Parameter weg.
- clustername
- Der WebSphere-Cluster, in dem die Messaging-Anwendung implementiert werden soll.
Geben Sie diesen Parameter nur dann an, wenn Sie das Messaging in einem Cluster konfigurieren und keinen Knoten und keinen Server angeben.
Anmerkung: Bei Verwendung einer Cloudscape-Ereignisdatenbank wird das Clustering nur für Testzwecke unterstützt (nicht in einer Produktionsumgebung).
- anwendungsname
- Der Name, der für die Messaging-Unternehmensanwendung verwendet werden soll. Dieser Parameter ist erforderlich.
- warteschlange
- Der JNDI-Name der JMS-Warteschlange, die durch die Messaging-Unternehmensanwendung verwendet werden soll. Diese Warteschlange wird für den asynchronen Transport von Nachrichten an den Ereignisserver verwendet. Wenn Sie die Messaging-Anwendung mehrmals implementieren, dann müssen Sie jedes Mal eine andere JMS-Warteschlange angeben.
- verbindungsfactory
- Der JNDI-Name der JMS-Verbindungsfactory, die durch die Messaging-Unternehmensanwendung verwendet werden soll.
- listener-port
- Der Name des Listener-Ports, der durch die Messaging-Unternehmensanwendung verwendet werden soll. Der Listener-Port wird im Deploymentdeskriptor spezifiziert. Geben Sie diesen Parameter nur dann an, wenn Ihre Messaging-Anwendung einen Listener-Port verwendet.
- spezifikationsname
- Der JNDI-Name der Aktivierungsspezifikation, die durch die Messaging-Unternehmensanwendung verwendet werden soll. Die Aktivierungsspezifikation wird im Deploymentdeskriptor spezifiziert. Geben Sie diesen Parameter nur dann an, wenn Ihre Messaging-Anwendung eine Aktivierungsspezifikation verwendet.
- ereignisprofilgeltungsbereich
- Der Geltungsbereich der Objekte des Konfigurationsprofils, die für das Ereignis-Messaging erstellt werden sollen. Dieser Parameter ist optional. Wenn Sie einen Geltungsbereich angeben, dann werden ein JMS-Übertragungsprofil und ein Emitter-Factory-Profil mit dem angegebenen Geltungsbereich erstellt. Die gültigen Werte sind cell, node und server.
Wird der optionale Parameter -trace angegeben, dann werden an die Standardausgabe zusätzliche Debuginformationen ausgegeben.
Anmerkung: - Wenn Sie einen vollständig qualifizierten Pfad für das Verzeichnis der Datei event-message.ear angeben, dann stellen Sie sicher, dass Sie im Pfad normale Schrägstriche (/) verwenden, auch in Windows-Systemen.
- Wenn Sie einen vollständig qualifizierten Pfad für das Verzeichnis der Datei event-message.ear angeben, dann stellen Sie sicher, dass Sie im Pfad normale Schrägstriche (/) verwenden.
- Wenn Sie die Messaging-Anwendung in einem eigenständigen Knoten implementieren, dann geben Sie den optionalen Parameter -conntype none an, damit wsadmin im Lokalmodus ausgeführt wird.
Nach dem Start des Script werden Sie nach Benutzer-ID und Kennwort für JMS gefragt.