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.

Szenario des Typs 'Anforderung/Antwort' unter Verwendung eines MQGet-Knotens

In diesem Abschnitt wird ein Szenario beschrieben, in dem ein MQGet-Knoten in einem Anforderung-Antwort-Nachrichtenfluss verwendet wird. Es wird erklärt, wie der Knoten die Eingabenachrichten (gemäß der von Ihnen festgelegten Baumstruktur für die lokale Umgebung und Ihrer Eingabeparameter) verarbeitet, um die Ausgabenachrichten zu erstellen.

Bei einem Anforderung-Antwort-Nachrichtenfluss handelt es sich um eine spezielle Form einer Punkt-zu-Punkt-Anwendung. Unter Konnektivitätsknoten finden Sie eine allgemeine Beschreibung dieser Anwendungen. Der folgende Abschnitt enthält ein Beispiel für einen Anforderung-Antwort-Nachrichtenfluss: Informationen zu Beispielen können nur bei Verwendung des in das WebSphere Message Broker Toolkit integrierten bzw. online verfügbaren Information Center angezeigt werden. Muster können nur ausgeführt werden, wenn das im WebSphere Message Broker Toolkit integrierte Information Center verwendet wird.

Ein MQGet-Knoten kann überall im Nachrichtenfluss eingefügt werden. Dies gilt auch für einen Nachrichtenfluss, der ein Anforderung-Antwort-Szenario implementiert. Der MQGet-Knoten empfängt an seinem Eingabeterminal eine Eingabenachricht vom vorhergehenden Knoten im Nachrichtenfluss, gibt einen MQGET-Aufruf aus, um eine Nachricht aus der in seinen Eigenschaften konfigurierten WebSphere MQ-Warteschlange abzurufen, und erstellt eine daraus resultierende Nachrichtenbaumstruktur. Schließlich verwendet er die Eingabe- und die Ergebnisbaumstruktur, um eine Ausgabebaumstruktur zu erstellen, die je nach Konfiguration des Knotens und abhängig vom Ergebnis der MQGET-Operation entweder an sein Ausgabeterminal, das Warnungsterminal oder das Fehlerterminal (Failure) weitergegeben wird.

Handhabung der Baumstruktur für die lokale Umgebung durch den MQGet-Knoten

Der MQGet-Knoten untersucht die vom vorangegangenen Knoten übergebene Baumstruktur für die lokale Umgebung, verwendet den MQGMO-relevanten Inhalt (MQGMO = MQ Get Message Options, MQ-Optionen für Nachrichtenabruf) sowie den MQMD (MQ Message Descriptor-Header) und aktualisiert die lokale Umgebung:

  • Der Knoten liest die MQGMO-Struktur aus ${inputMQParmsLocation}.MQGMO.*.
  • Er kopiert die WebSphere MQ-Beendigungs- und -Ursachencodes in ${outputMQParmsLocation}.CC und ${outputMQParmsLocation}.RC.
  • Der Knoten schreibt die vollständigen MQGMO-Daten, die für den MQGET-Aufruf verwendet werden, in ${outputMQParmsLocation}.MQGMO, wenn ${inputMQParmsLocation}.MQGMO in der Eingabebaumstruktur enthalten ist.
  • Der Knoten legt die an den MQGET-Aufruf übergebenen MQMD-Daten (mit den in der Eingabenachricht angegebenen oder von dem Knoten generierten Werten) an dieser Adresse ab, wobei alle dort bereits vorhandenen Daten gelöscht werden.

Setzen Sie auf der Registerkarte Anforderungseigenschaften in der Eigenschaft Position für MQ-Eingabeparameter des MQGet-Knotens den Wert auf ${inputMQParmsLocation}.

Setzen Sie auf der Registerkarte Ergebniseigenschaften in der Eigenschaft Position für MQ-Ausgabeparameter des MQGet-Knotens den Wert auf ${outputMQParmsLocation}.

Weitere Informationen zu diesen Eigenschaften finden Sie im Abschnitt MQGet-Knoten.

Zusammenfassung:
${inputMQParmsLocation}
  • QueueName: Optionale Überschreibung der Eigenschaft Name der Warteschlange des MQGet-Knotens
  • InitialBufferSize: Optionale Überschreibung der Eigenschaft Anfängliche Puffergröße des MQGet-Knotens
  • MQGMO.*: Optionale MQGET-Nachrichtenoptionen, die vom MQGet-Knoten verwendet werden
${outputMQParmsLocation}
  • CC: Beendigungscode des MQGET-Aufrufs
  • RC: Ergebniscode des MQGET-Aufrufs
  • MQGMO.*: MQGET-Nachrichtenoptionen, die verwendet werden, falls sie in ${inputMQParmsLocation} enthalten sind
  • MQMD: nicht analysierter MQ-Nachrichtendeskriptor für empfangene Nachrichten1
  • Browsed: Ist auf 'True' gesetzt, wenn die Nachricht angezeigt wird. Nicht vorhanden, wenn die Nachricht aus der Warteschlange entfernt wurde.
Sie können den MQMD-Header (z. B. mit ESQL) analysieren, wobei ${outputMQParmsLocation} den Wert 'LocalEnvironment.MQ.GET' hat:
DECLARE ptr REFERENCE TO OutputLocalEnvironment.MyMQParms;
CREATE FIRSTCHILD OF ptr DOMAIN('MQMD') PARSE(InputLocalEnvironment.MQ.GET.MQMD)

Erstellung der MQMD-Daten für den MQGET-Aufruf

  • Es wird ein Standard-MQMD vorbereitet. Weitere Informationen zu MQMD finden Sie im Abschnitt Application Programming Reference im WebSphere MQ Version 7 Information Center online.
  • Wenn Sie keinen Eingabe-MQMD angeben, wird der Standard-MQMD verwendet.
  • Wenn Sie einen Eingabe-MQMD angeben, wird der Standard-MQMD mit folgenden Änderungen verwendet:
    • Ist die Eigenschaft Verwenden Sie alle Eingabe-MQMD-Felder definiert, werden alle angegebenen MQMD-Felder aus dem Eingabe-MQMD in den Standard-MQMD kopiert.
    • Wenn die Eigenschaft Verwenden Sie alle Eingabe-MQMD-Felder nicht definiert ist und die Eigenschaften Abruf nach Nachrichten-ID bzw. Abruf nach Korrelations-ID ausgewählt sind, werden die jeweiligen IDs aus dem Eingabe-MQMD in den Standard-MQMD kopiert.

Das folgende Diagramm zeigt, wie der MQGet-Knoten den MQMD, der im Aufruf an WebSphere MQ verwendet werden soll, erstellt:

Die Abbildung wird im vorhergehenden Text beschrieben.

Erstellung der Ausgabenachrichtenbaumstruktur

Das folgende Diagramm zeigt im Überblick, wie die Ausgabenachrichtenbaumstruktur vom MQGet-Knoten erstellt wird, indem die Eingabebaumstruktur aus dem vorherigen Knoten mit der Ergebnisbaumstruktur aus dem MQGET-Aufruf kombiniert wird:

Die Abbildung wird im vorhergehenden Text beschrieben.

In diesem Beispiel werden die Eigenschaften des MQGet-Knotens wie in der folgenden Tabelle dargestellt konfiguriert.
Eigenschaft Aktion
Nachricht kopieren Gesamte Nachricht kopieren
Generierungsmodus Nachricht
Position für Ausgabedaten OutputRoot.XMLNS.A
Position für Ergebnisdaten ResultRoot.XMLNS.C
Der MQGet-Knoten konstruiert die Ausgabebaumstruktur in folgendem Ablauf:
  1. Die gesamte Eingabebaumstruktur wird in die Ausgabebaumstruktur kopiert, einschließlich des XML-Zweiges mit dem untergeordneten Element A und dem A untergeordneten Element B.
  2. Das untergeordnete Element C und das C untergeordnete Element D im XML-Zweig werden aus der Ergebnisbaumstruktur an Position OutputRoot.XMLNS.A in der Ausgabebaumstruktur abgelegt. Der bisherige Inhalt von A (Werte und untergeordnete Elemente) wird gelöscht und durch den Inhalt von C ersetzt, einschließlich aller Werte und untergeordneten Elemente (in diesem Fall des untergeordneten Elements D).
  3. Die Position in der Ausgabebaumstruktur behält den Namen A.

Das folgende Diagramm zeigt dieses Verhalten:

Die Abbildung wird im vorhergehenden Text beschrieben.

Im Abschnitt Beispiele für Nachrichtenbaumstrukturen des MQGet-Knotens finden Sie einige Beispiele für Nachrichtenbaumstrukturen, die vom MQGet-Knoten gemäß den oben beschriebenen Regeln erstellt werden.

Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

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

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


ReferenzthemaReferenzthema | Version 8.0.0.5 | ac34680_