Mustercode 'JMS Nodes' einrichten

In diesem Mustercode fungiert WebSphere MQ als JMS-Provider; die verwalteten Objekte müssen mit dem JMSAdmin-Tool erstellt werden.

Vorbereitungen:

Wenn der Mustercode unter Linux ausgeführt wird, müssen Sie folgende Schritte ausführen:

  1. Fügen Sie dem Klassenpfad die Klasse 'JMSAdmin' hinzu, indem Sie folgende Datei in Ihren Klassenpfad aufnehmen:
    >MQ_Installationsverzeichnis</java/lib/com.ibm.mqjms.jar
  2. Schließen Sie in Ihren Klassenpfad folgenden Code ein, um die Java-Speicherposition Ihrer PATH-Variablen hinzuzufügen:
    >JAVA_HOME</bin

Verwaltete Objekte mit dem Tool JMSAdmin erstellen

Bei den folgenden Anweisungen wird davon ausgegangen, dass WebSphere MQ im Verzeichnis MQ-Installationsverzeichnis installiert ist. Das Tool 'JMSAdmin' und die JMSAdmin-Konfigurationsdatei befinden sich an folgenden Positionen:

Vor Verwendung des Tools 'JMSAdmin' müssen Sie unter Umständen die Datei JMSAdmin.config ändern.

Datei JMSAdmin.config prüfen und ändern

  1. Öffnen Sie in einem Texteditor die Datei JMSAdmin.config.
  2. Setzen Sie alle Optionen, die nicht erforderlich sind, auf Kommentar, indem Sie ein Nummernzeichen (#) hinzufügen. Entfernen Sie die Kommentarzeichen für alle erforderlichen Optionen, indem Sie das Nummernzeichen (#) löschen.
    # The following line specifies which JNDI service provider is in use.
    #  It currently indicates a File System Context. If a different
    #  service provider is used, this line must be commented out, and the
    #  appropriate one must be uncommented.
    #
    #  com.sun.jndi.fscontext.RefFSContextFactory is the FileSystem JNDI Context
    #
    #INITIAL_CONTEXT_FACTORY=com.sun.jndi.ldap.LdapCtxFactory
    INITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContextFactory
    #INITIAL_CONTEXT_FACTORY=com.ibm.ejs.ns.jndi.CNInitialContextFactory
    #INITIAL_CONTEXT_FACTORY=com.ibm.websphere.naming.WsnInitialContextFactory
    #
    #  The following line specifies the URL of the service provider's initial
    #  context. It currently refers to an File System Context. Examples of a
    #  LDAP root context URL and WebSphere's JNDI namespace are also shown, commented
    #  out.
    #
    #  PROVIDER_URL needs changing to, e.g. file:///home/user/JNDI-Directory
    #  on Unix platforms. The 'JNDI-Directory' folder needs to be created in the
    #  location specified.
    #
    #PROVIDER_URL=ldap://localhost/o=ibm,c=us
    PROVIDER_URL=file:/C:/JNDI-Directory
    #PROVIDER_URL=iiop://localhost/	
    
  3. Stellen Sie sicher, dass die PROVIDER_URL auf /C:/JNDI-Directory oder eine entsprechende Position unter Linux gesetzt ist. Außerdem muss INITIAL_CONTEXT_FACTORY auf com.sun.jndi.fscontext.RefFSContextFactory gesetzt sein.
  4. Speichern Sie die Datei, wenn Sie Änderungen vorgenommen haben.
  5. Erstellen Sie das Verzeichnis PROVIDER_URL, falls es noch nicht vorhanden ist.

Sie können jetzt die Objekte erstellen.

Objekte erstellen

Erstellen Sie die von JNDI verwalteten Objekte, um die im Mustercode verwendeten JMS-Verbindungsfactorys und Ziele zu konfigurieren, indem Sie das Tool WebSphere MQ JMSAdmin ausführen.

Die Objekte werden durch Ausführung des Tools 'JMSAdmin' erstellt, wobei die Datei JMSSampleObjects.defs als Eingabe verwendet wird.

Wenn der Broker nicht Port 2414 verwendet, bearbeiten Sie die Porteinstellung in JMSSampleObjects.defs.

Geben Sie folgende Befehle in der Befehlszeile ein:

WebSphere MQ wird in der Position MQ-Installationsverzeichnis installiert und Arbeitsbereichspfad ist der vollständige Pfad des Arbeitsbereichsverzeichnisses von WebSphere Message Broker Toolkit.

Die Objekte und die Bindungsdatei (.bindings) werden erstellt.

Modifizieren Sie dann ein JNDI-Objekt und ein MQInput-Knotenattribut:

  1. Geben Sie zum Starten des JMSAdmin-Tools folgenden Befehl ein:

    Dabei lautet das Installationsverzeichnis von WebSphere MQ: MQ_Installationsverzeichnis.

  2. Ändern Sie dieses JNDI-Objekt, indem Sie in der Befehlszeile die folgenden Befehle eingeben:
    alter q(publishqueue) queue(PUBLISHQUEUE)
  3. Die JMSAdmin-Sitzung wird mit dem folgenden Befehl beendet:
    end

JNDI-Pfad in den Nachrichtenflüssen konfigurieren

Damit die JMS-Knoten in den Nachrichtenflüssen die von Ihnen erstellte Bindungsdatei (.bindings) finden können, müssen Sie deren Speicherposition angeben.

So geben Sie die Speicherposition der Bindungsdatei (.bindings) in der Konfiguration der JMS-Knoten an:

  1. Doppelklicken Sie in der Ansicht 'Brokerentwicklung' im Nachrichtenflussprojekt des Mustercodes 'JMS-Knoten' auf die Datei JMSGateway.msgflow. Daraufhin wird ein Nachrichtenflusseditor geöffnet, in dem Sie den JMSGateway-Nachrichtenfluss bearbeiten können.
  2. Klicken Sie mit der rechten Maustaste auf den JMSOutput-Knoten im Nachrichtenfluss und klicken Sie anschließend auf Eigenschaften, um die Ansicht 'Eigenschaften' aufzurufen.
  3. Wählen Sie im Teilfenster Eigenschaften die Registerkarte JMS-Verbindung aus.
  4. Stellen Sie sicher, dass der Wert im Feld Speicherposition der JNDI-Bindingsdatei dem Wert in der Zeile PROVIDER_URL in der Datei JMSAdmin.config entspricht. Stimmen diese beiden Werte nicht überein, funktioniert der Nachrichtenfluss nicht.
  5. Speichern Sie den Nachrichtenfluss.
  6. Öffnen Sie den Nachrichtenfluss 'JMSInput_Publication' im Nachrichtenflusseditor, und konfigurieren Sie den JMSInput-Knoten auf dieselbe Weise mit der Speicherposition der BINDINGS-Datei.

Die Nachrichtenflüsse sind jetzt konfiguriert und können für den Broker implementiert werden.

BAR-Datei erstellen und Nachrichtenflüsse implementieren

Um die Nachrichtenflüsse 'JMSGateway' und 'JMSInput_Publication' zu implementieren, erstellen Sie eine BAR-Datei (Broker Archive), die beide Nachrichtenflüsse enthält.

Gehen Sie folgendermaßen vor, um die BAR-Datei zu erstellen:

  1. Klicken Sie in der Ansicht 'Brokerentwicklung' mit der rechten Maustaste und anschließend auf Neu > BAR-Datei.
  2. Wählen Sie das Projekt "JMSNodesSampleFlow Project" aus und geben Sie einen Namen für die BAR-Datei ein.
  3. Klicken Sie auf Fertigstellen. Daraufhin wird das Teilfenster 'Vorbereiten' geöffnet. In diesem Teilfenster werden die Optionen zur Erstellung einer neuen Brokerarchivdatei angezeigt.
  4. Fügen Sie der BAR-Datei beide Nachrichtenflüsse hinzu und speichern Sie anschließend Ihre Optionen (Strg+S).
  5. Erstellen Sie nun die BAR-Datei, indem Sie auf die Schaltfläche Brokerarchiv erstellen klicken. Die von Ihnen erstellte BAR-Datei wird in der Ansicht 'Brokerentwicklung' im BAR-Ordner des Projekts 'JMSNodesSampleFlowProject' angezeigt.
  6. Klicken Sie auf die BAR-Datei und ziehen Sie sie in der Ansicht 'Broker' in die Ausführungsgruppe default. Dadurch werden die Nachrichtenflüsse im Broker implementiert.

Sie können jetzt den Mustercode ausführen.

Zurück zum Beginn des Mustercodes