Ein Parser wird vom Broker nur aufgerufen, wenn dieser Parser auch
erforderlich ist. Welcher Parser aufgerufen wird, hängt von dem Parser ab, der angegeben
wurde. Bei einem Knoten zur Nachrichtenverarbeitung wird in der Nachricht angegeben, von
welcher Stelle die Nachricht abgerufen und welcher Parser verwendet werden soll.
Bei bestimmten Implementierungsfunktionen muss möglicherweise der Name eines Parsers angegeben werden, der im Lieferumfang von
WebSphere Message Broker enthalten ist.
Unter anderem gehören folgende Funktionen dazu:
- cniCreateElementAfterUsingParser
- cniCreateElementAsFirsthChildUsingParser
- cniCreateElementAsLastChildUsingParser
- cniCreateElementAsLastChildFromBitstream
- cniCreateElementBeforeUsingParser
Wenn Sie diese Funktionen verwenden, müssen Sie den korrekten Klassennamen
des Parsers angeben. Die folgende Tabelle bietet eine Übersicht über die Parser, Stammelementnamen und Klassennamen für verschiedene Header.
Parser |
Stammelementname |
Klassenname |
BLOB (Binary large object) |
BLOB (Binary large object) |
NONE |
IDOC |
IDOC |
IDOC |
JMSMap |
JMSMap |
JMS_MAP |
JMSStream |
JMSStream |
JMS_STREAM |
MIME |
MIME |
MIME |
MQCFH |
MQPCF |
MQPCF |
MQCIH |
MQCIH |
MQCICS |
MQDLH |
MQDLH |
MQDEAD |
MQIIH |
MQIIH |
MQIMS |
MQMD |
MQMD |
MQHMD |
MQMDE |
MQMDE |
MQHMDE |
MQRFH |
MQRFH |
MQHRF |
MQRFH2 |
MQRFH2 |
MQHRF2 |
MQRMH |
MQRMH |
MQHREF |
MQSAPH |
MQSAPH |
MQHSAP |
MQWIH |
MQWIH |
MQHWIH |
MRM |
MRM |
MRM |
Eigenschaften |
Eigenschaften |
PropertyParser |
SMQ_BMH |
SMQ_BMH |
SMQBAD |
XML |
XML |
xml |
XMLNS |
XMLNS |
xmlns |
XMLNSC |
XMLNSC |
xmlnsC |
Sie können auch eigene benutzerdefinierte Parser erstellen oder von
Drittanbietern bereitgestellte benutzerdefinierte Parser verwenden.
Standardattribute für Nachrichten-Parser überschreiben
Ein benutzerdefinierter Empfangsknoten kann einen geeigneten Header oder Nachrichten-Parser und den Modus, in dem die Syntaxanalyse gesteuert wird, mit Hilfe der folgenden Attribute auswählen, die standardmäßig enthalten sind und die Sie überschreiben können:
- rootParserClassName
- Definiert den Namen des Stamm-Parsers, der Nachrichtenformate analysiert, die vom benutzerdefinierten Empfangsknoten unterstützt werden. Der Standardwert ist GenericRoot, ein bereitgestellter Stamm-Parser, der den Broker veranlasst, Parser zuzuordnen und zu verketten. Es ist unwahrscheinlich, dass ein Knoten diesen Attributwert ändern muss.
- firstParserClassName
- Definiert den Namen des ersten Parsers in einer möglichen Kette von Parsern, die für die Syntaxanalyse des Bitstroms verantwortlich sind. Der Standardwert ist XML.
- messageDomainProperty
- Ein optionales Attribut, das den Namen des Nachrichten-Parsers definiert, der für die Syntaxanalyse der Eingabenachricht erforderlich ist. Die unterstützten Werten entsprechen den vom MQEmpfangsknoten unterstützten Werten. (Weitere Informationen zum MQEmpfangsknoten finden Sie unter MQEmpfangsknoten.)
- messageSetProperty
- Ein optionales Attribut, das die Nachrichtengruppen-ID oder den Nachrichtengruppennamen im Feld Nachrichtengruppe definiert, aber nur wenn der MRM-Parser durch das Attribut messageDomainProperty angegeben wurde.
- messageTypeProperty
- Ein optionales Attribut, das die Nachrichten-ID im Feld Nachrichtenart definiert, aber nur wenn der MRM-Parser durch das Attribut messageDomainProperty angegeben wurde.
- messageFormatProperty
- Ein optionales Attribut, das das Format der Nachricht im Feld Nachrichtenformat definiert, aber nur wenn der MRM-Parser durch das Attribut messageDomainProperty angegeben wurde.