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.

Nachricht an das Ausgangsterminal und das alternative Terminal des JavaCompute-Knotens weitergeben

Der JavaCompute-Knoten verfügt über zwei Ausgabeterminals: das Ausgangsterminal und das alternative Terminal. Daher können Sie den Knoten sowohl als Filterknoten als auch als Knoten zur Nachrichtenumsetzung verwenden. Geben Sie die Nachricht nach der Verarbeitung mithilfe der Methode propagate() an ein Ausgabeterminal weiter.

Verwenden Sie folgende Methode zur Weiterleitung der Nachrichtenassembly an das Ausgangsterminal:
out.propagate(assembly);
Verwenden Sie folgende Methode zur Weiterleitung der Nachrichtenassembly an das alternative Terminal:
alt.propagate(assembly);
Wenn Sie das gleiche MbMessage-Objekt mehrmals weitergeben möchten, rufen Sie die Methode finalizeMessage() des MBMessage-Objekts auf, damit alle an der Nachricht vorgenommenen Änderungen im nach dem JavaCompute-Knoten generierten Bitstrom wiedergegeben werden. Beispiel:
MbMessage outMessage = new MbMessage(inMessage);
MbMessageAssembly outAssembly = new MbMessageAssembly(inAssembly, outMessage);
...
newMsg.finalizeMessage(MbMessage.FINALIZE_NONE);
out.propagate(outAssembly);
...
newMsg.finalizeMessage(MbMessage.FINALIZE_NONE);
out.propagate(outAssembly);
Wenn die Weitergabe in Ihrem Fall häufig über einen JavaCompute-Knoten erfolgt und jedes Mal ein neues MbMessage-Objekt erstellt wird, verwenden Sie folgenden Code:
MbOutputTerminal.propagate(MbMessageAssembly, true)
Dieser Code stellt nach der Weitergabe die Nachrichtenbaumstruktur und die Parserressourcen wieder her, damit diese Ressourcen verwendet werden können, wenn das nächste MbMessage-Objekt für die Weitergabe erstellt wird. Ein Beispiel hierfür finden Sie unter Mit umfangreichen Eingabenachrichten zur Weitergabe mehrerer Ausgabenachrichten arbeiten.

Wenn Sie diesen Code verwenden, werden die Ressourcen der Nachrichtenbaumstruktur für die nicht schreibgeschützten MbMessage-Objekte in der MbMessageAssembly freigegeben. Folglich wird die Methode MbMessage.clearMessage(true) für jedes änderbare MbMessage-Objekt aufgerufen. Daher können diese MbMessage-Objekte nicht erneut verwendet werden.

Falls Nachrichtenbaumstrukturfelder bei den einzelnen MbMessage-Objekten lokal festgelegt waren oder nur zwischen den drei MbMessage-Objekten ab- oder angehängt wurden, werden die Parser ebenfalls zur Wiederverwendung wiederhergestellt. Wenn jedoch Elemente abgehängt und an ein nicht weitergegebenes MbMessage-Objekt angehängt wurden, können die Parser in den nächsten Iterationen von Eingabedatensätzen nicht wiederverwendet werden.

Rufen Sie bei derartigen, nicht weitergegebenen MbMessage-Objekten die Methode MbMessage.clearMessage(true) explizit auf, bevor der nächste Eingabedatensatz verarbeitet wird. Bei dieser Methode können Parser wiederverwendet 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:10


TaskthemaTaskthema | Version 8.0.0.5 | ac30380_