Ein Parser ist ein Programm, das den Bitstrom einer eingehenden Nachricht interpretiert und eine interne Darstellung der Nachricht in einer Baumstruktur erzeugt. Darüberhinaus generiert der Parser erneut einen Bitstrom für eine abgehende Nachricht auf Basis der internen Darstellung in der Nachrichtenbaumstruktur.
Ein Parser wird aufgerufen, wenn der Bitstrom, der eine Eingabenachricht darstellt, in das interne Format konvertiert wird, das vom Broker verarbeitet werden kann. Das interne Format, eine logische Baumstruktur, wird in Logische Baumstruktur beschrieben. Für die Interpretation des Bitstroms hat der Parser seine eigene, eindeutige Vorgehensweise, deshalb ist die logische Nachrichtenbaumstruktur, die auf Basis des Bitstroms erstellt wird, von Parser zu Parser unterschiedlich.
Ein Parser könnte auch einen Bitstrom auf Basis einer Baumstruktur erstellen, wenn ein Knoten im Nachrichtenfluss die ESQL-Funktion ASBITSTREAM aufruft.
Der Broker benötigt für jede Nachrichtendomäne, zu der Ihre Eingabe- und Ausgabenachrichten gehören, Zugriff auf einen Parser. Darüberhinaus benötigt der Broker einen Parser für jeden identifizierbaren Nachrichtenheader, der in der Ein- oder Ausgabenachricht enthalten ist. Parser werden bei Bedarf vom Nachrichtenfluss aufgerufen.
WebSphere Message Broker bietet eine integrierte Unterstützung für Nachrichten in den folgenden Nachrichtendomänen. Hierzu werden die unten aufgeführten Nachrichtentext-Parser bereitgestellt:
Zudem stehen in WebSphere Message Broker Parser für die folgenden Nachrichtenheader zur Verfügung, die Ihre Anwendungen in Eingabe- oder Ausgabenachrichten einschließen können:
Eine Liste der Elemente, die zum MQCFH-Header gehören, finden Sie unter Der MQCFH-Parser.
Weitere Informationen zu diesem Header und seinem Inhalt finden Sie im Abschnitt Programmable Command Formats and Administration Interface (Programmierbare Befehlsformate und Verwaltungsschnittstelle) im WebSphere MQ Version 6 Information Center online oder im Version 5.3 Information Center der Webseite der Bibliothek zu WebSphere MQ.
Eine Liste der Elemente, die zum MQCIH-Header gehören, finden Sie unter Der MQCIH-Parser.
Eine Liste der Elemente, die zum MQDLH-Header gehören, finden Sie unter Der MQDLH-Parser.
Eine Liste der Elemente, die zum MQIIH-Header gehören, finden Sie unter Der MQIIH-Parser.
Eine Liste der Elemente, die zum MQMD-Header gehören, finden Sie unter Der MQMD-Parser.
Eine Liste der Elemente, die zum MQMDE-Header gehören, finden Sie unter Der MQMDE-Parser.
Eine Liste der Elemente, die zum MQRFH-Header gehören, finden Sie unter Der MQRFH-Parser.
Eine Liste der Elemente, die zum MQRFH2-Header gehören, finden Sie unter MQRFH2- und MQRFH2C-Parser.
Eine Liste der Elemente, die zum MQRMH-Header gehören, finden Sie unter Der MQRMH-Parser.
Eine Liste der Elemente, die zum MQSAPH-Header gehören, finden Sie unter Der MQSAPH-Parser.
Eine Liste der Elemente, die zum MQWIH-Header gehören, finden Sie unter Der MQWIH-Parser.
Eine Liste der Elemente, die zum SMQ_BMH-Header gehören, finden Sie unter Der SMQ_BMH-Parser.
Um Nachrichteninhalt oder Header, die von den bereitgestellten Parsern nicht verarbeitet werden können, verarbeiten und syntaktisch analysieren zu können, müssen Sie mithilfe der WebSphere Message Broker-Programmierschnittstelle für benutzerdefinierte Parser eigene Parser erstellen.
Für Nachrichten oder Nachrichtenbereiche im Format MQFMT_IMS_VAR_STRING wird kein Parser bereitgestellt. Daten in diesem Format geht häufig ein MQIIH-Header (Format MQFMT_IMS) voraus. WebSphere Message Broker behandelt solche Daten als BLOB-Nachricht. Wenn Sie in einem Nachrichtenfluss die ID des codierten Zeichensatzes (CodedCharSetId) oder die Verschlüsselung (encoding) ändern, werden die MQFMT_IMS_VAR_STRING-Daten nicht konvertiert, und der Nachrichtendeskriptor bzw. der vorangegangene Header beschreibt diesen Nachrichtenbereich nicht korrekt. Wenn die Daten in diesen Nachrichten konvertiert werden müssen, definieren Sie die Nachricht in der MRM, oder stellen Sie einen benutzerdefinierten Parser bereit.