Wenn Sie zum Lesen oder Schreiben auf den Inhalt einer Nachricht zugreifen möchten, verwenden Sie Struktur und Anordnung der Elemente in der Baumstruktur, die der Parser aus dem Eingabebitstrom erstellt. Folgen Sie den relevanten übergeordneten und untergeordneten Beziehungen im Baum abwärts, bis Sie das erforderliche Element erreicht haben.
Die Nachrichtenbaumstruktur wird als Argument der Prüfmethode an einen Java-Rechenknoten übermittelt. Bei dem Argument handelt es sich um ein Objekt vom Typ 'MbMessageAssembly'. In 'MbMessageAssembly' sind vier Nachrichtenobjekte enthalten:
- Nachricht
- Lokale Umgebung
- Globale Umgebung
- Ausnahmeliste
Mit Ausnahme der globalen Umgebung sind diese Objekte schreibgeschützt. Wenn Sie versuchen, diese Objekte zu bearbeiten, wird die Ausnahmebedingung 'MbReadOnlyException' ausgelöst.
Dieser Abschnitt enthält Informationen zum Zugriff auf Elemente in einer Nachrichtenbaumstruktur:
Elementbaumstruktur durchlaufen
In dieser Tabelle werden die Java-Methoden gezeigt, mit denen auf die Elementbaumstrukturen zugegriffen werden kann, sowie die entsprechenden ESQL-Korrelationsnamen für jeden Punkt in der Baumstruktur.
Java-Zugriffsmechanismus aus MbMessageAssembly |
ESQL-Korrelationsname |
getMessage().getRootElement() |
InputRoot |
getMessage().getRootElement().getLastChild() |
InputBody |
getLocalEnvironment().getRootElement() |
InputLocalEnvironment |
getGlobalEnvironment().getRootElement() |
Umgebung |
getExceptionList().getRootElement() |
InputExceptionList |
Mit diesen Methoden können Sie eine Nachrichtenbaumstruktur von einem Element des Typs 'MbElement' durchlaufen:
- getParent()
- gibt das übergeordnete Element des aktuellen Elements zurück
- getPreviousSibling()
- gibt das vorhergehende gleichgeordnete Element des aktuellen Elements zurück
- getNextSibling()
- gibt das nächste gleichgeordnete Element des aktuellen Elements zurück
- getFirstChild()
- gibt das erste untergeordnete Element des aktuellen Elements zurück
- getLastChild()
- gibt das letzte untergeordnete Element des aktuellen Elements zurück
Im folgenden Beispiel wird eine einfache XML-Nachricht und die logische Baumstruktur gezeigt, die aus der Nachricht erstellt würde. Die Nachricht wurde in diesem Beispiel mit Hilfe von WebSphere MQ gesendet. In der logischen Baumstruktur werden auch die Methoden gezeigt, die für die Navigation in der Baumstruktur aufgerufen werden können.
<document>
<chapter title='Einführung'>
Text.
</chapter>
</document>

Durch den folgenden Java-Code wird auf das Kapitelelement in der logischen Baumstruktur zugegriffen:
MbElement root = assembly.getMessage().getRootElement();
MbElement chapter = root.getLastChild().getFirstChild().getFirstChild();
Auf Informationen über ein Element mit Hilfe eines Java-Rechenknotens zugreifen
Verwenden Sie diese Methode zum Zurückgeben von Informationen zum referenzierten Element.
Die benutzerdefinierte Java-Knoten-API stellt weitere Informationen zu diesen Methoden bereit:
- getName()
- gibt den Elementnamen als 'java.lang.String' zurück
- getValue()
- gibt den Elementwert zurück
- getType()
- gibt einen der folgenden generischen Typen zurück:
- NAME. Ein Element diesen Typs hat einen Namen, jedoch keinen Wert.
- VALUE. Ein Element diesen Typs hat einen Wert, jedoch keinen Namen.
- NAME/VALUE. Ein Element diesen Typs hat einen Wert und einen Namen.
- getSpecificType()
- gibt den parserspezifischen Typ des Elements zurück
- getNamespace()
- gibt die Namespace-URI dieses Element zurück