Dieses Thema ist in folgende Abschnitte eingeteilt:
Mit dem MQEmpfangsknoten können Sie Nachrichten von Clients empfangen, die über WebSphere MQ Enterprise Transport eine Verbindung zum Broker herstellen und die MQI- und AMI-Anwendungsprogrammierschnittstellen verwenden.
Der MQEmpfangsknoten empfängt Nachrichten für einen Nachrichtenfluss von einer WebSphere MQ-Nachrichtenwarteschlange, die beim Warteschlangenmanager des Brokers definiert wurde. Der Knoten liest mittels MQGET eine Nachricht von einer angegebenen Warteschlange und baut die Verarbeitungsumgebung für die Nachricht auf. Falls passend, können Sie die Eingabewarteschlange als eine WebSphere MQ-Clusterwarteschlange oder als gemeinsam genutzte Warteschlange definieren.
Nachrichtenflüsse für die Verarbeitung von Nachrichten, die über WebSphere MQ-Verbindungen empfangen werden, müssen immer mit einem MQEmpfangsknoten starten. Sie können die Eigenschaften des MQEmpfangsknotens so angeben, dass sie die Empfangsart der Nachrichten bestimmen; lassen Sie hierzu entsprechende MQGET-Optionen einstellen. Beispiel: Sie können angeben, dass eine Nachricht unter Transaktionssteuerung verarbeitet wird. Sie können ebenfalls bestimmen, dass beim Empfang von jeder Eingabenachricht eine Datenkonvertierung durchgeführt wird.
Der MQEmpfangsknoten bearbeitet Nachrichten in den folgenden Nachrichtendomänen:
Wenn Sie einen Sendeknoten in einen Nachrichtenfluss aufnehmen, der mit einem MQEmpfangsknoten beginnt, können Sie einen beliebigen unterstützten Sendeknoten einschließlich benutzerdefinierter Sendeknoten verwenden;es muss sich hierbei nicht um einen MQSendeknoten handeln. Sie können einen Nachrichtenfluss erstellen, der Nachrichten von WebSphere MQ-Clients empfängt und für Clients generiert, die für die Verbindung mit dem Broker eines der unterstützten Transportprotokolle verwenden. Dies ist möglich, weil Sie den Nachrichtenfluss so konfigurieren können, dass er beim Broker die erforderliche Konvertierung anfordert.
Wenn Sie einen Nachrichtenfluss erstellen, so dass er einen untergeordneten Fluss verwendet, können Sie keinen Standardsendeknoten verwenden, sondern müssen eine Instanz des Empfangsknotens als ersten Knoten nehmen, um ein Eingangsterminal für den untergeordneten Fluss zu erstellen.
Wenn Ihr Nachrichtenfluss keine Nachrichten über WebSphere MQ-Verbindungen empfängt, können Sie einen der unterstützten Empfangsknoten auswählen.
Der MQEmpfangsknoten wird in der Workbench durch das folgende Symbol dargestellt:
Die nachfolgenden Beispiele erläutern die Verwendung des MQEmpfangsknotens:
Wenn Sie eine Instanz des MQEmpfangsknotens in einen Nachrichtenfluss eingereiht haben, können Sie sie konfigurieren. Klicken Sie in der Editoransicht mit der rechten Maustaste auf den Knoten, und wählen Sie dann Eigenschaften. Es werden die Grundeigenschaften des Knotens im Eigenschaftendialog angezeigt.
Alle verbindlichen Eigenschaften, für die kein Standardwert definiert ist, sind im Eigenschaftendialog mit einem Stern markiert.
Konfigurieren Sie den MQEmpfangsknoten wie folgt:
<mcd><Msd>MRM</Msd><Set>DHM4UO906S001</Set><Type>receiptmsg1</Type> <Fmt>XML</Fmt></mcd>
Wenn Sie Werte festlegen, die sich von denen im MQRFH2-Header unterscheiden, haben die Werte im MQRFH2-Header Vorrang.
Lassen Sie die Nachrichtengruppe bei den XML-, XMLNS-, XMLNSC-, JMS-, MIME- und BLOB-Parsern leer.
Lassen Sie das Feld Nachrichtenart bei XML-, XMLNS-, XMLNSC-, JMS-, MIME-, BLOB- und IDOC-Parsern leer.
Lassen Sie das Nachrichtenformat bei den XML-, XMLNS-, XMLNSC-, JMS-, MIME- und BLOB-Parsern leer.
Weitere Informationen zu dieser Option finden Sie unter Den Knoten für die Handhabung von Nachrichtengruppen konfigurieren.
Wenn Sie die Auswahl des Markierungsfelds aufheben, werden Nachrichten, die als Teil einer Gruppe gesendet wurden, nicht in einer vorbestimmten Reihenfolge empfangen. Wenn ein Broker den Erhalt von Nachrichten in Gruppen erwartet und dieses Markierungsfeld nicht ausgewählt ist, ist entweder die Reihenfolge der Eingabenachrichten nicht von Bedeutung oder der Nachrichtenfluss muss entsprechend angelegt werden, damit er sie angemessen verarbeitet.
Sie müssen das Markierungsfeld Festschreiben nach Nachrichtengruppe auswählen, wenn die Nachrichtenverarbeitung nur festgeschrieben werden soll, nachdem die letzte Nachricht einer Gruppe empfangen und verarbeitet wurde.
Weitere Informationen zu den Optionen, bei denen diese Eigenschaft zur Anwendung kommt, finden Sie im Handbuch WebSphere MQ Application Programming Reference.
Weitere Informationen zu dieser Option finden Sie unter Den Knoten für die Handhabung von Nachrichtengruppen konfigurieren.
Weitere Informationen zu den Optionen, bei denen diese Eigenschaft zur Anwendung kommt, finden Sie im Handbuch WebSphere MQ Application Programming Reference.
Geben Sie eine gerade Zahl bestehend aus hexadezimalen Ziffern (die Zeichen 0 bis 9, A bis F und a bis f sind gültig) ein. Es sind maximal 48 Ziffern zulässig. Wenn die von Ihnen eingegebene ID kürzer als die Größe des MsgId-Feldes ist, wird sie rechts mit X'00' Zeichen aufgefüllt. Dies entspricht der Option MQMO_MATCH_MSG_ID der MQGMO von MQI.
Lassen Sie diese Eigenschaft leer, wenn der Empfangsknoten nicht prüfen soll, ob die Nachrichten-ID passt.
Weitere Informationen zu den Optionen, bei denen diese Eigenschaft zur Anwendung kommt, finden Sie im Handbuch WebSphere MQ Application Programming Reference.
Geben Sie eine gerade Zahl bestehend aus hexadezimalen Ziffern (die Zeichen 0 bis 9, A bis F und a bis f sind gültig) ein. Es sind maximal 48 Ziffern zulässig. Wenn die von Ihnen eingegebene ID kürzer als die Größe des CorrelId-Feldes ist, wird sie rechts mit X'00' Zeichen aufgefüllt. Dies entspricht der Option MQMO_MATCH_CORREL_ID der MQGMO von MQI.
Lassen Sie diese Eigenschaft leer, wenn der Empfangsknoten nicht prüfen soll, ob die Nachrichten-ID passt.
Weitere Informationen zu den Optionen, bei denen diese Eigenschaft zur Anwendung kommt, finden Sie im Handbuch WebSphere MQ Application Programming Reference.
WebSphere MQ konvertiert die eingehende Nachricht in die Verschlüsselung und den codierten Zeichensatz, die im MQMD festgelegt sind, den der Empfangsknoten beim MQGET-Aufruf liefert, um die Nachricht von der Eingabewarteschlange abzurufen. Der Nachrichtenfluss generiert alle seine Ausgabenachrichten mit diesen Werten und reiht sie in Zielwarteschlangen ein, wobei diese Encoding- und CodedCharSetID-Werte im MQMD angegeben sind.
Diese Option entspricht der Option MQGMO_CONVERT der MQGMO von MQI.
Entfernen Sie das Häkchen aus dem Markierungsfeld, wenn WebSphere MQ die Nachricht nicht konvertiert werden soll.
Wenn Sie dieses Markierungsfeld auswählen, können Sie ebenfalls Folgendes angeben:
Wenn Sie keinen Wert angeben, wird der Wert im MQMD der eingehenden Nachricht verwendet.
Falls Sie einen ungültigen Wert angeben, wird keine Konvertierung durchgeführt.
Wenn Sie keinen Wert angeben, wird der Wert im MQMD der eingehenden Nachricht verwendet.
Falls Sie einen ungültigen Wert angeben, wird keine Konvertierung durchgeführt.
Weitere Informationen zur WebSphere MQ-Datenkonvertierung und zu Gründen für die Verwendung dieser Option finden Sie im Handbuch WebSphere MQ Application Programming Guide. Weitere Informationen zu den Werten, die für Codierungskonvertierung und CCSID-Konvertierung angegeben werden können, erhalten Sie im HandbuchWebSphere MQ Application Programming Reference.
Diese Eigenschaft ist nur von Bedeutung, wenn Sie Logische Reihenfolge ausgewählt haben.
Setzen Sie die Eigenschaft Modus für Reihenfolge auf Nach WS-Reihenfolge, wenn die Nachrichten in einer Gruppe in der Reihenfolge abgerufen und verarbeitet werden sollen, in der sie in der Warteschlange vorliegen.
Der Wert, den Sie für das Serialisierungs-Token angeben, muss den Regeln entsprechen, die im Handbuch WebSphere MQ Application Programming Reference beschrieben sind.
Weitere Informationen zur seriellen Verarbeitung und gemeinsamen Warteschlangennutzung unter z/OS finden Sie im Handbuch WebSphere MQ Concepts and Planning Guide.
Sie finden detaillierte Informationen hierzu unter Nachrichten prüfen und Eigenschaften der Gültigkeitsprüfung für Nachrichten in der MRM-Domäne.
Klicken Sie auf Abbrechen, um den Dialog zu schließen und alle Änderungen zu verwerfen, die Sie an den Eigenschaften durchgeführt hatten.
Der MQEmpfangsknoten leitet jede Nachricht, die er erfolgreich abruft, an das Ausgangsterminal weiter. Schlägt dies fehl, wird eine Wiederholung vorgenommen. Falls das Wiederholungszeitlimit (wie über das 'BackoutThreshold'-Attribut der Eingabewarteschlange definiert) überschritten wird, wird die Nachricht an das Fehlerterminal weitergeleitet; Sie können Knoten mit diesem Terminal verbinden, um diese Bedingung zu handhaben. Wenn das Fehlerterminal nicht verbunden ist, wird die Nachricht in die Rücksetzungswarteschlange geschrieben.
Wenn nach Ausgabe einer Ausnahmebedingung später im Fluss die Nachricht von diesem Knoten abgefangen wird, wird sie an das Catch-Terminal weitergeleitet. Ist das Catch-Terminal nicht verbunden, läuft die Nachricht in einer kontinuierlichen Schleife durch den Knoten, bis das Problem gelöst ist. Sie müssen eine Rücksetzungswarteschlange oder eine Warteschlange für nicht zustellbare Nachrichten (DLQ) definieren, um zu verhindern, dass sich die Nachricht in einer kontinuierlichen Schleife im Knoten befindet.
Wenn Sie einen MQEmpfangsknoten in einem Nachrichtenfluss einschließen, definiert der Wert, den Sie für Transaktionsmodus festlegen, ob Nachrichten unter dem Synchronisationspunkt empfangen werden:
(Der MQSendeknoten ist der einzige Sendeknoten, der dafür konfiguriert werden kann, dass diese Option außer Kraft gesetzt wird.)
WebSphere MQ unterstützt Nachrichtengruppen. Sie können angeben, dass eine Nachricht zu einer Gruppe gehört und dass ihre sowie die Verarbeitung aller anderen Nachrichten in der Gruppe als eine Transaktion behandelt werden muss. Wenn also die Verarbeitung einer Nachricht in der Gruppe fehlschlägt, werden alle Nachrichten der Gruppe zurückgesetzt. Die Nachrichtenverarbeitung wird festgeschrieben, nachdem auch die letzte Nachricht in der Gruppe erfolgreich verarbeitet wurde.
Wenn Sie Nachrichten in einer Gruppe einschließen und es wichtig ist, dass alle Nachrichten in der Gruppe von der Warteschlange gelesen und in der Reihenfolge verarbeitet werden, in der sie in der Gruppe definiert sind, müssen Sie alle unten stehenden Aktionen durchführen:
Sie müssen ebenfalls sicherstellen, dass Sie über keinen anderen Nachrichtenfluss verfügen, der von der gleichen Eingabewarteschlange Nachrichten abfragt. Ist dies der Fall, gibt es keine Garantie für die Reihenfolge, in der die Nachrichten in einer Gruppe verarbeitet werden.
In der nachfolgenden Tabelle werden die Terminals des MQEmpfangsknotens beschrieben.
Terminal | Beschreibung |
---|---|
Fehlerterminal | Das Ausgabeterminal, an das die Nachricht weitergeleitet wird, wenn ein Fehler auftritt. Auch wenn die Eigenschaft 'Auswertung' angegeben ist, werden an dieses Terminal weitergegebene Nachrichten nicht ausgewertet. |
Ausgabeterminal | Das Ausgabeterminal, an das die Nachricht weitergeleitet wird, wenn sie erfolgreich von der WebSphere MQ-Warteschlange abgerufen wird. |
Catch-Terminal | Das Ausgabeterminal, an das die Nachricht weitergeleitet wird, wenn eine Ausnahmebedingung ausgegeben und von diesem Knoten abgefangen wird. |
Die folgenden Tabellen beschreiben die Knoteneigenschaften; die Spalte mit der Überschrift 'O' gibt an, dass die Eigenschaft obligatorisch ist (beim Eigenschaftendialog mit einem Stern markiert, wenn Sie einen Wert eingeben müssen, falls kein Standardwert definiert ist); die Spalte mit der Überschrift 'K' gibt an, ob die Eigenschaft konfigurierbar ist (Sie können den Wert ändern, wenn Sie den Nachrichtenfluss der BAR-Datei hinzufügen, um sie einzusetzen).
In der nachfolgenden Tabelle werden die Basiseigenschaften des MQEmpfangsknotens beschrieben.
Eigenschaft | M | C | Standardwert | Beschreibung |
---|---|---|---|---|
Name der Warteschlange | Ja | Ja | Der Name der WebSphere MQ-Eingabewarteschlange, von der dieser Knoten Nachrichten (mittels MQGET) für die Verarbeitung durch diesen Nachrichtenfluss abfragt. |
In der nachfolgenden Tabelle werden die Standardeigenschaften des MQEmpfangsknotens beschrieben.
Eigenschaft | M | C | Standardwert | Beschreibung |
---|---|---|---|---|
Nachrichtendomäne | Nein | Nein | Die Domäne, die für die Syntaxanalyse der ankommenden Nachricht verwendet wird. | |
Nachrichtengruppe | Nein | Nein | Der Name oder die ID der Nachrichtengruppe, in der die ankommende Nachricht definiert ist. | |
Nachrichtenart | Nein | Nein | Der Name der ankommenden Nachricht. | |
Nachrichtenformat | Nein | Nein | Der Name des physischen Formats der ankommenden Nachricht. | |
Thema | Nein | Ja | Das Standardthema für die Eingabenachricht. |
In der nachfolgenden Tabelle werden die erweiterten Eigenschaften des MQEmpfangsknotens beschrieben.
Eigenschaft | M | C | Standardwert | Beschreibung |
---|---|---|---|---|
Transaktionsmodus | Ja | Nein | Ja | Empfang der eingehenden Nachricht unter dem Synchronisationspunkt. Gültige Werte sind Automatisch, Ja und Nein. |
Modus für Reihenfolge | Ja | Nein | Standardwert | Reihenfolge, in der Nachrichten von der Eingabewarteschlange abgefragt und verarbeitet werden. Gültige Werte sind Standardwert, Nach Benutzer-ID und Nach WS-Reihenfolge. |
Logische Reihenfolge | Ja | Nein | Ausgewählt | Empfang von Nachrichten in der logischen Reihenfolge, wie von WebSphere MQ definiert. Wenn Sie das Markierungsfeld auswählen, wird diese Aktion ausgeführt. |
Alle Nachrichten verfügbar | Ja | Nein | Gelöscht | Wenn Sie das Markierungsfeld auswählen, müssen alle Nachrichten in einer Gruppe verfügbar sein, bevor das Abfragen einer Nachricht möglich ist. |
Nachrichten-ID vergleichen | Nein | Nein | Eine Nachrichten-ID, die mit der Nachrichten-ID im MQMD der eingehenden Nachricht übereinstimmen muss. | |
Korrelations-ID vergleichen | Nein | Nein | Eine Korrelations-ID, die mit der Korrelations-ID im MQMD der eingehenden Nachricht übereinstimmen muss. | |
Konvertieren | Ja | Nein | Gelöscht | Konvertierung von Daten durch WebSphere MQ in der zu empfangenden Nachricht gemäß den CodedCharSetId- und Encoding-Werten konvertiert, die im MQMD festgelegt sind. Wenn Sie das Markierungsfeld auswählen, wird diese Aktion ausgeführt. |
Codierungskonvertierung | Nein | Nein | Die Darstellung, die für numerische Werte in den Nachrichtendaten verwendet wird, als ganzzahliger Wert ausgedrückt. Diese Eigenschaft ist nur gültig, wenn Sie das Markierungsfeld Konvertieren ausgewählt haben. | |
CCSID-Konvertierung | Nein | Nein | Die ID des codierten Zeichensatzes von Zeichendaten in den Nachrichtendaten als ganzzahliger Wert ausgedrückt. Diese Eigenschaft ist nur gültig, wenn Sie das Markierungsfeld Konvertieren ausgewählt haben. | |
Festschreiben nach Nachrichtengruppe | Ja | Nein | Gelöscht | Festschreibung einer Transaktion beim Verarbeiten von Nachrichten, die Teil einer Nachrichtengruppe sind. Wenn Sie das Markierungsfeld auswählen, wird die Transaktion nach Verarbeiten der Nachrichtengruppe festgeschrieben. |
z/OS Serialization Token | Nein | Nein | Benutzerdefiniertes Token für eine serialisierte Anwendungsunterstützung. Der angegebene Wert muss den Regeln für gültige ConnTags in der MQCNO-Struktur von WebSphere MQ entsprechen. Diese Regeln sind im Handbuch WebSphere MQ Application Programming Reference beschrieben. |
In der nachfolgenden Tabelle werden die Auswertungseigenschaften des MQEmpfangsknotens beschrieben.
Der Abschnitt Eigenschaften der Gültigkeitsprüfung für Nachrichten in der MRM-Domäne enthält eine ausführliche Beschreibung dieser Eigenschaften.Eigenschaft | M | C | Standardwert | Beschreibung |
---|---|---|---|---|
Auswerten | Ja | Ja | Keine | Durchführung einer Auswertung. Gültige Werte sind Keine,Inhalt und Inhalt und Wert. |
Aktion bei Fehler | Ja | Nein | Ausnahme | Aktion beim Fehlschlagen einer Gültigkeitsprüfung. Sie können diese Eigenschaft nur angeben, wenn Sie Auswerten auf Inhalt oder Inhalt und Wert gesetzt haben. Gültige Werte sind Benutzertrace, Lokales Fehlerprotokoll, Ausnahmebedingung und Ausnahmeliste. |
Alle Wertvorgaben einschließen | Ja | Nein | Ausgewählt | Diese Eigenschaft kann nicht bearbeitet werden. Die Standardaktion (ausgewähltes Kontrollkästchen) besteht darin, dass in der Auswertung von Inhalt und Wert auch Basisprüfungen der Wertvorgaben ausgeführt werden. |
Korrektur | Ja | Nein | Keine | Diese Eigenschaft kann nicht bearbeitet werden. |
In der nachfolgenden Tabelle werden die Eigenschaften der allgemeinen Nachrichtenoptionen des MQEmpfangsknotens beschrieben.
Eigenschaft | M | C | Standardwert | Beschreibung |
---|---|---|---|---|
Zeitpunkt für Syntaxanalyse | Ja | Nein | Bei Bedarf | Durch diese Eigenschaft wird gesteuert, zu welchem Zeitpunkt eine Eingabenachricht syntaktisch analysiert wird.
Gültige Werte sind Bei Bedarf, Sofort und Vollständig. Der Abschnitt Bedarfsgerechte Syntaxanalyse enthält eine ausführliche Beschreibung dieser Eigenschaft. |
MQRFH2C Compact Parser für MQRFH2-Domäne verwenden | Ja | Nein | Nein | Durch diese Eigenschaft wird gesteuert, ob der MQRFH2C Compact Parser anstelle des MQRFH2-Parsers für MQRFH2-Header verwendet wird. |
In der nachfolgenden Tabelle werden die Eigenschaften der XMLNSC-Parseroptionen für den MQEmpfangsknoten beschrieben.
Eigenschaft | M | C | Standardwert | Beschreibung |
---|---|---|---|---|
XMLNSC Compact Parser für XMLNS-Domäne verwenden | Ja | Gelöscht | Nein | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Feststellen von Nachrichten in der XMLNS-Domäne zum Erstellen von Elementen in der Nachrichtenbaumstruktur verwendet wird. |
Residenter Modus für gemischten Inhalt | Ja | Nein | Keine | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Feststellen von gemischtem Text in einer Eingabenachricht Elemente in der Nachrichtenbaumstruktur erstellt. Gültige Werte sind Keine und Alle. Durch die Auswahl von Alle werden Elemente für gemischte Texte erstellt. Durch die Auswahl von Keine werden gemischte Texte ignoriert und keine Elemente erstellt. |
Residenter Modus für Kommentare | Ja | Nein | Keine | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Feststellen von Kommentaren in einer Eingabenachricht Elemente in der Nachrichtenbaumstruktur erstellt. Gültige Werte sind Keine und Alle. Durch die Auswahl von Alle werden Elemente für Kommentare erstellt. Durch die Auswahl von Keine werden Kommentare ignoriert und keine Elemente erstellt. |
Residenter Modus für Verarbeitungsanweisungen | Ja | Nein | Keine | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Feststellen von Verarbeitungsanweisungen in einer Eingabenachricht Elemente in der Nachrichtenbaumstruktur erstellt. Gültige Werte sind Keine und Alle. Durch die Auswahl von Alle werden Elemente für Verarbeitungsanweisungen erstellt. Durch die Auswahl von Keine werden Verarbeitungsanweisungen ignoriert und keine Elemente erstellt. |
In der nachfolgenden Tabelle werden die Beschreibungseigenschaften des MQEmpfangsknotens beschrieben.
Eigenschaft | M | C | Standardwert | Beschreibung |
---|---|---|---|---|
Kurzbeschreibung | Nein | Nein | Eine Kurzbeschreibung des Knotens. | |
Ausführliche Beschreibung | Nein | Nein | Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt. |