WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

Eigenschaften für Ereignishandler festlegen

Sie können für jedes dynamische Eingabeterminal auf einem Collector-Knoten Eigenschaften für den Ereignishandler festlegen. Über die Eigenschaften des Ereignishandlers können Sie festlegen, wie die von den jeweiligen Terminals empfangenen Nachrichten zu Nachrichtensammlungen hinzugefügt werden.

Bevor Sie beginnen:

Sie können für jedes Eingabeterminal, das Sie zum Collector-Knoten hinzugefügt haben, eine oder mehrere Ereignishandlereigenschaften hinzufügen, um zu steuern, wie Nachrichten zu Nachrichtensammlungen hinzugefügt werden. Unvollständige Nachrichtensammlungen werden in einer WebSphere MQ-Warteschlange gespeichert. Die Nachrichtensammlungen werden in der Reihenfolge gespeichert, in der sie vom Collector-Knoten erzeugt werden (die ältesten zuerst). Jede Nachrichtensammlung verfügt für jedes Eingabeterminal über jeweils eine Ereignishandlerinstanz. Der Ereignishandler bestimmt, ob eine an einem bestimmten Terminal eingegangene Nachricht zu einer Nachrichtensammlung hinzugefügt wird. Die Ereignishandlerinstanz verwaltet Informationen zum Status der Sammlung, zur Anzahl der empfangenen Nachrichten, zum Zeitgeber und zur Korrelationszeichenfolge. Wenn eine neue Nachricht bei einem Eingabeterminal eingeht, wird sie den Ereignishandlern der jeweiligen Nachrichtensammlungen in der Warteschlange angeboten. Wenn die Nachricht von einem der Ereignishandler akzeptiert wird, wird sie zur entsprechenden Nachrichtensammlung hinzugefügt. Die akzeptierte Nachricht wird keinen weiteren Nachrichtensammlungen angeboten. Wenn die Nachricht von allen Ereignishandlern abgelehnt wird, wird sie zu einer neuen Nachrichtensammlung hinzugefügt, die am Ende der Warteschlange eingereiht wird.

Die Nachricht, die zuerst in einer Objektgruppe akzeptiert wird, bestimmt die Korrelationszeichenfolge für diese Nachrichtensammlung, falls sie konfiguriert ist. Nachfolgende Nachrichten, die dieser Nachrichtensammlung angeboten werden, werden nur akzeptiert, wenn deren Korrelationszeichenfolge mit der der Objektgruppe übereinstimmt. Die erste von einem Ereignishandler akzeptierte Nachricht startet den Zeitlimitzähler, falls er konfiguriert wurde. Mit jeder Nachricht, die von den jeweiligen Ereignishandlern akzeptiert wird, erhöht sich der Wert des Mengenzählers. Die Anforderungen des Ereignishandlers sind erfüllt, wenn die Anzahl der akzeptierten Nachrichten der konfigurierten Menge entspricht, oder wenn der Zeitlimitwert erreicht ist. Wenn die Anforderungen des Ereignishandlers erfüllt sind, werden keine weiteren Nachrichten vom Ereignishandler akzeptiert. Eine Nachrichtensammlung ist nur dann vollständig, wenn die Anforderungen aller Ereignishandler der Nachrichtensammlung erfüllt sind. In diesem Fall kann die Nachrichtensammlung weitergegeben werden.

Sie können die Eigenschaften des Ereignishandlers in der Tabelle Definition der Objektgruppe auf der Registerkarte Grundeinstellung der Eigenschaftenansicht konfigurieren.

So konfigurieren Sie die Ereignishandlereigenschaften auf dem Collector-Knoten:

  1. Öffnen Sie den Nachrichtenfluss mit dem Collector-Knoten.
  2. Klicken Sie mit der rechten Maustaste auf den Collector-Knoten, und wählen Sie Eigenschaften aus.
  3. Klicken Sie auf die Registerkarte Grundeinstellung.
  4. Befolgen Sie die nachstehenden Anweisungen zur Konfiguration der Ereignishandlereigenschaften, die Sie für die jeweiligen Eingabeterminals setzen möchten:
    • Wenn Sie eine festgelegte Anzahl Nachrichten zu jeder Nachrichtensammlung von einem oder mehreren Terminals hinzufügen möchten, müssen Sie einen Wert für Menge in der Tabelle 'Definition der Objektgruppe' angeben. Mit diesem Wert wird die Anzahl der Nachrichten angegeben, die die konfigurierten Eingabeterminals akzeptieren, um eine Objektgruppe zu vervollständigen. Wenn Sie beispielsweise für drei der Eingabeterminals Menge auf den Empfang von 2 Nachrichten gesetzt haben, ist die Nachrichtensammlung erst vollständig, wenn 2 Nachrichten bei jedem der drei Eingabeterminals eingegangen sind. Die vollständige Nachrichtensammlung enthält insgesamt 6 Nachrichten und zwar 2 von jedem der drei Terminals. Wenn bei einem der Eingabeterminals mehr als 2 Nachrichten eingehen, wird die nächste Nachricht zu einer neuen Nachrichtensammlung hinzugefügt.
      1. Klicken Sie in der Tabelle 'Definition der Objektgruppe' in der Spalte Menge auf die Zeile für das ausgewählte Eingabeterminal.
      2. Geben Sie einen Wert für die Anzahl der Eingabenachrichten ein, die zu einer Nachrichtensammlung hinzugefügt werden sollen. Wenn Sie null auswählen oder keinen Wert für diese Eigenschaft angeben, ist die Anzahl der akzeptierten Namen nicht beschränkt. In diesem Fall muss der Wert für die Eigenschaft Zeitlimit größer als null sein. Wenn Sie den Standardwert 1 akzeptieren, wird nur eine Nachricht aus dem ausgewählten Terminal zu einer Objektgruppe hinzugefügt.

      Falls der Wert Zeitlimit nicht definiert ist, muss ein Wert für Menge eingegeben werden.

    • Wenn Sie Nachrichten eine bestimmte Zeit lang erfassen möchten, bevor die Nachrichtensammlung weitergegeben wird, müssen Sie einen Wert für Zeitlimit angeben. Dieser Wert gibt die Zeit in Sekunden an, die das ausgewählte Eingabeterminal auf den Eingang von Nachrichten maximal wartet, bevor eine Nachrichtensammlung komplettiert wird. Das Zeitlimitintervall beginnt, wenn die erste Nachricht beim ausgewählten Terminal eingeht. Alle nachfolgenden Nachrichten werden zur selben Nachrichtensammlung hinzugefügt. Wenn das Zeitlimitintervall endet, werden von diesem Terminal keine Nachrichten zur Nachrichtensammlung mehr hinzugefügt. Wenn die Bedingungen auf allen Terminals erfüllt sind, ist die Nachrichtensammlung zur Weitergabe bereit. Wenn die nächste Nachricht beim ausgewählten Eingabeterminal eingeht, wird eine neue Nachrichtensammlung erstellt und das Zeitlimitintervall beginnt von Neuem. Wenn ein Zeitlimit für mehrere Eingabeterminals definiert wird, werden auf jedem dieser Terminals Nachrichten für die konfigurierte Dauer erfasst. Während des Zeitlimits werden die Nachrichten von allen Terminals zur selben Nachrichtensammlung hinzugefügt.
      1. Klicken Sie in der Tabelle 'Definition der Objektgruppe' in der Spalte Zeitlimit auf die Zeile für das ausgewählte Eingabeterminal.
      2. Geben Sie einen Wert in Sekunden ein, der angibt, wie lange auf den Empfang von Nachrichten, die zu einer Nachrichtensammlung hinzugefügt werden, gewartet werden soll. Wenn beispielsweise eine Stunde auf den Empfang von Nachrichten, die zu einer Nachrichtensammlung hinzugefügt werden, gewartet werden soll, geben Sie den Wert 3600 ein. Wenn Sie den Standardwert null akzeptieren, ist das Zeitlimit nicht aktiviert und die Wartezeit für den Empfang von Nachrichten ist nicht beschränkt. In diesem Fall muss der Wert für die Eigenschaft Menge größer als null sein.

      Falls die Menge nicht definiert ist, muss ein Wert für Zeitlimit eingegeben werden.

    • Wenn Sie Nachrichten abhängig von deren Inhalt zu verschiedenen Nachrichtensammlungen hinzufügen möchten, müssen Sie einen XPath-Wert für den Korrelationspfad angeben. Mit dieser Eigenschaft wird der Pfad in der eingehenden Nachricht angegeben, aus dem die Korrelationszeichenfolge extrahiert werden soll. Die Korrelationszeichenfolge ist der Wert, der vom Korrelationspfad extrahiert wird. Wenn ein Korrelationsmuster angegeben ist, wird die Korrelationszeichenfolge mit dem Korrelationsmuster abgeglichen. Es werden nur Nachrichten in eine Nachrichtensammlung aufgenommen, die über dieselbe Korrelationszeichenfolge verfügen. Wenn Sie einen Stern (*) im Namen der Nachrichtensammlung angeben, wird dieser durch die Korrelationszeichenfolge ersetzt.
      1. Klicken Sie in der Tabelle 'Definition der Objektgruppe' in der Spalte Korrelationspfad auf die Zeile für das ausgewählte Eingabeterminal.
      2. Wählen Sie in der Liste einen vordefinierten Korrelationspfad aus, oder geben Sie einen eigenen Korrelationspfad unter Verwendung von XPath an. Der Korrelationspfad muss mit einem Korrelationsnamen beginnen. Auf diesen können mehrere Pfadfelder folgen. Beispiel: In der folgenden Nachricht lautet die Korrelationszeichenfolge xxx im Namensfeld:
        <library>
        		<name>xxx</name>
        		<more>
        		...
        		</more>
        </library>
        In diesem Beispiel lautet der Korrelationspfad unter Verwendung von XPath $Body/library/name.

        Die Variablen $Root, $LocalEnvironment und $Environment sind verfügbar, damit der Pfad in den Stammverzeichnissen der Nachrichtenbaumstruktur, der Baumstruktur für lokale Umgebung, der Umgebungsbaumstruktur und der Baumstruktur für den Nachrichtenhauptteil starten kann.

      Wenn die Korrelationszeichenfolge eine leere Zeichenfolge ergibt, wird die Nachricht ohne Entsprechung zu einer nicht benannten Standardnachrichtensammlung hinzugefügt.

      Wenn Sie einen Wert für Korrelationspfad auswählen, können Sie optional ein Korrelationsmuster konfigurieren.

    • Wenn Sie eine Unterzeichenfolge des Nachrichteninhalts aus dem Korrelationspfad abgleichen möchten, können Sie ein Muster für den Abgleich in der Nachricht unter Verwendung des Korrelationsmusters definieren. Das Korrelationsmuster enthält ein einzelnes Platzhalterzeichen und optionalen Text. Die Korrelationszeichenfolge, die für den Namen der Nachrichtensammlung verwendet wird, ist der Teil der Unterzeichenfolge, die dem Platzhalterzeichen entspricht. Beispiel: Wenn der Korrelationspfad den Dateinamen part1.dat im Dateiheader enthält und für das Korrelationsmuster *.dat angegeben ist, lautet die Korrelationszeichenfolge part1.

      Wenn diese Eigenschaft gesetzt ist, werden nur Nachrichten mit derselben Korrelationszeichenfolge zur selben Nachrichtensammlung hinzugefügt. Die erste Nachricht, die zu einer Nachrichtensammlung hinzugefügt wird, bestimmt die Korrelationszeichenfolge, der alle anderen Nachrichten in dieser Nachrichtengruppe entsprechen müssen.
      1. Klicken Sie in der Tabelle 'Definition der Objektgruppe' in der Spalte Korrelationsmuster auf die Zeile für das ausgewählte Eingabeterminal.
      2. Geben Sie einen Wert für das Korrelationsmuster ein. Das Korrelationsmuster muss ein einzelnes Platzhalterzeichen enthalten: *. Das Platzhalterzeichen kann optional von anderem Text umgeben sein.

      Wenn das Korrelationsmuster das Platzhalterzeichen nicht mit einer Unterzeichenfolge abgleichen kann, wird die Nachricht ohne Entsprechung zu einer nicht benannten Standardnachrichtensammlung hinzugefügt.

  5. Wiederholen Sie Schritt 4 für jedes Eingabeterminal, das Sie zu Ihrem Collector-Knoten hinzugefügt haben. Sie können verschiedene Ereignishandler für verschiedene Eingabequellen konfigurieren.
Anmerkung: Achten Sie darauf, dass Sie die Ereignishandlereigenschaften für verschiedene Terminals sorgfältig definieren, so dass diese der erwarteten Nachrichtenübermittlung an die Terminals auf dem Collector-Knoten entsprechen.
Sie können jetzt das Verfallsdatum für die Nachrichtensammlung konfigurieren (siehe Objektgruppenablauf festlegen).
Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:20:16


TaskthemaTaskthema | Version 8.0.0.5 | ac37730_