Mit dem JMSReply-Knoten werden Nachrichten an JMS-Zieladressen gesendet.
Dieses Thema ist in folgende Abschnitte eingeteilt:
Dieser JMSReply hat eine ähnliche Funktion wie der JMSOutput-Knoten, jedoch sendet der JMSReply-Knoten JMS-Nachrichten nur an die Antwortzieladresse, die im Headerfeld 'JMSReplyTo' der JMS-Nachrichtenbaumstruktur angegeben wurde. Verwenden Sie den JMSReply-Knoten, wenn Sie eine JMS-Nachricht, die von einem Nachrichtenfluss erstellt wird, als Antwort auf eine JMS-Eingabenachricht behandeln möchten und keine weiteren Anforderungen bezüglich des Routings bestehen.
Der JMSReply-Knoten befindet sich im Ablagefach JMS der Palette und wird im WebSphere Message Broker Toolkit durch folgendes Symbol dargestellt:
Angenommen, Sie erstellen einen Nachrichtenfluss, in dem ein JMSInput-Knoten Punkt-zu-Punkt-Nachrichten von einer JMS-Zieladresse namens 'MyJMSInputQueue' empfängt. Der Nachrichtenfluss aktualisiert eine Tabelle mit dem Inhalt der Nachricht, antwortet anschließend einer JMS-Zieladresse namens 'MyJMSReplyQueue', die von der generierenden Anwendung im Header 'JMSReplyTo' der Eingabenachricht festgelegt wird.
In einem ähnlichen Szenario für das Publish/Subscribe-Nachrichtenmodell subskribiert ein JMSInput-Knoten TopicA und der JMSReply-Knoten veröffentlicht an Zieladresse TopicB, die aus dem Header 'JMSReplyTo' der Eingabenachricht abgerufen wurde.
Die Funktion 'cciOutputMessageCallback' kann als Callback registriert und immer aufgerufen werden, wenn von einem JMSReply-Knoten eine Nachricht gesendet wird. Weitere Informationen hierzu finden Sie unter cciOutputMessageCallback.
Wenn der Benutzerexitstatus aktiv ist, wird die Funktion 'cciOutputMessageCallback' für jede Ausgabenachricht aufgerufen, die erfolgreich von einem JMSReply-Knoten, auf dem der Callback registriert ist, gesendet wird.
Wenn der Knoten in der Baumstruktur 'LocalEnvironment' die Information 'WrittenDestination' bereitstellt, wird der Callback nach der Erstellung dieser Information aufgerufen. Weitere Informationen hierzu finden Sie unter LocalEnvironment-Variablen bei JMSOutput- und JMSReply-Knoten verwenden.
Verbinden Sie einen Compute-Knoten mit dem Ausgangsterminal eines JMSReply-Knotens und überprüfen Sie die WrittenDestination-Liste. Der Abschnitt Die Baumstruktur einer logischen Nachricht in der Traceausgabe anzeigen enthält weitere Informationen hierzu.
WrittenDestination = (
JMS = (
DestinationData = (
destinationName = 'queue://jmsQueue1'
initialContext = 'com.sun.jndi.fscontext.RefFSContextFactory'
JMSMessageID = ID:414d512054657374514d2020202020206ab98b4520017a02'
JMSCorrelationID = 'ABCDEFGHIJKLMNOPQRSTUVW'
)
)
)
Nachdem Sie eine Instanz des JMSReply-Knotens in einen Nachrichtenfluss eingereiht haben, können Sie den Knoten konfigurieren; siehe Nachrichtenflussknoten konfigurieren. Die Eigenschaften des Knotens werden in der Ansicht 'Eigenschaften' angezeigt. Alle verbindlichen Eigenschaften, für die kein Standardwert definiert ist, sind mit einem Stern markiert.
In der folgenden Tabelle werden die Terminals des JMSReply-Knotens beschrieben.
Terminal | Beschreibung |
---|---|
Fehlerterminal (Failure) | Das Ausgabeterminal, an das die Nachricht geleitet wird, wenn ein Fehler auftritt.Selbst wenn die Eigenschaft 'Auswerten' festgelegt wird, werden Nachrichten, die an dieses Terminal weitergegeben werden, nicht ausgewertet. |
Ausgang | Das Ausgabeterminal, an das die Nachricht weitergeleitet wird, wenn sie erfolgreich von der WebSphere MQ-Warteschlange abgerufen wird. |
In den folgenden Tabellen werden die Knoteneigenschaften beschrieben. Die Spalte O zeigt an, ob die Eigenschaft 'obligatorisch' ist (markiert mit einem Sternchen, wenn ein Wert eingegeben werden muss, weil kein Standardwert definiert ist). Die Spalte K zeigt an, ob die Eigenschaft 'konfigurierbar' ist (Wert kann geändert werden, wenn der Nachrichtenfluss zur BAR-Datei hinzugefügt wird, um ihn einzusetzen).
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Knotenname | Nein | Nein | Knotentyp | Der Name des Knotens. |
Kurzbeschreibung | Nein | Nein | Kurze Beschreibung des Knotens. | |
Ausführliche Beschreibung | Nein | Nein | Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt. |
Eigenschaft | O | K | Standardwert | Beschreibung | Eigenschaft des Befehls mqsiapplybaroverride |
---|---|---|---|---|---|
An Zieladressenliste in lokaler Umgebung senden | Nein | Ja | Nicht ausgewählt | Wenn Sie in der lokalen Umgebung eine Liste von JMS-Zieladressen erstellt haben, aktivieren Sie dieses Kontrollkästchen, um die Zieladressenliste zu verwenden. Wenn Sie dieses Kontrollkästchen nicht aktivieren, verwendet der Knoten die konfigurierte JMS-Zieladresse. Wenn Sie dieses Kontrollkästchen aktivieren, aber keine Liste mit JMS-Zieladressen in der lokalen Umgebung erstellt haben, verwendet der Knoten die konfigurierte JMS-Zieladresse. | useDistList |
Eigenschaft | O | K | Standardwert | Beschreibung | Eigenschaft des Befehls mqsiapplybaroverride |
---|---|---|---|---|---|
Name des JMS-Providers | Ja | Nein | WebSphere MQ | Wählen Sie in der Liste den Namen eines JMS-Anbieters aus, oder geben Sie einen Namen ein. Wenn Sie in der Liste einen Namen auswählen, wird die Eigenschaft Ausgangskontextfactory automatisch mit der entsprechenden
Java™-Klasse aktualisiert. Wenn Sie den JMS-Provider selbst eingeben, müssen Sie auch einen Wert für Ausgangskontextfactory eingeben. Der Standardwert lautet WebSphere
MQ. Alternativ können Sie den konfigurierbaren Service JMSProviders angeben. |
|
Ausgangskontextfactory | No | Ja |
|
Diese Eigenschaft gibt dem Ausgangspunkt für einen JNDI-Namespace an. Eine JMS-Anwendung verwendet den Ausgangskontext, um die Verbindungsfactory sowie Warteschlangen
oder Themenobjekte für den JMS-Provider abzurufen und zu suchen. Wenn Sie in der Liste unter Name des JMS-Providers den Namen eines JMS-Providers auswählen, wird die Eigenschaft Ausgangskontextfactory automatisch mit der entsprechenden Java-Klasse aktualisiert. Wenn Sie den JMS-Provider selbst eingeben, müssen Sie auch einen Wert für Ausgangskontextfactory eingeben. Der Standardwert
definiert die dateibasierte Ausgangskontextfactory für den
WebSphere MQ-JMS-Provider.Wenn der Knoten für die Verwendung Ihres eigenen JMS-Providers eingestellt ist und für das entsprechende Merkmal Konfigurierbare Services der Definition mqsichangeproperties das Attribut Ausgangskontextfactory festgelegt wurde, überschreibt dies die Einstellung auf dem Knoten. |
initialContextFactory |
Position der JNDI-Bindungen | Nein | Ja | Diese Eigenschaft gibt entweder den Dateisystempfad oder die LDAP-Adresse
für die Bindungsdatei an. Die Bindungsdatei enthält Definitionen für die verwalteten JNDI-Objekte, die vom JMSReply-Knoten verwendet werden. Wenn Sie einen Wert für 'Position der JNDI-Bindungen' eingeben, müssen Sie dabei folgende Anweisungen einhalten:
Weitere Informationen zur Erstellung der Bindungsdatei für verwaltete JNDI-Objekte finden Sie in der Dokumentation, die mit dem JMS-Provider bereitgestellt wird. Wenn der Knoten für die Verwendung Ihres eigenen JMS-Providers eingestellt ist und für die entsprechende Eigenschaft 'Konfigurierbare Services' der Definition mqsichangeproperties das Attribut jndiBindingsLocation definiert ist, wird die Einstellung auf dem Knoten mit diesem Attribut überschrieben. |
locationJndiBindings | |
Name der Verbindungsfactory | No | Ja | Der Name der Verbindungsfactory, der vom JMSReply-Knoten für die Erstellung einer Verbindung zum JMS-Provider verwendet wird. Dieser Name muss in der Bindungsdatei bereits vorhanden sein. | connectionFactoryName |
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Neue Korrelations-ID | Nein | Ja | Nicht ausgewählt | Aktivieren Sie das Kontrollkästchen, wenn der JMSReply-Knoten benötigt wird, um eine neue Korrelations-ID für die Nachricht zu generieren. Das Kontrollkästchen ist standardmäßig inaktiviert. Wenn Sie es nicht aktivieren, wird die Korrelations-ID der Ausgabenachricht aus dem Feld 'JMSCorrelationID' im Abschnitt 'JMSTransport_Header_Values' der Nachrichtenbaumstruktur übernommen. |
Transaktionsmodus | Nein | Nein | Nein | Durch diese Eigenschaft wird gesteuert, ob die Nachricht unter
einer JMS-Transaktion empfangen wird. Gültige Werte sind Ja und Nein.
|
Zustellmodus | Nein | Ja | Automatisch | Durch diese Eigenschaft wird der Permanenzmodus gesteuert, den ein
JMS-Provider für eine Nachricht verwendet. Folgendes sind gültige Werte:
|
Verfall der Nachricht (ms) | Ja | Ja | 0 | Diese Eigenschaft gibt (in Millisekunden) die Zeitdauer an, für die der JMS-Provider die
JMS-Ausgabenachricht aufbewahrt.
Mit dem Standardwert
0 wird angegeben, dass die Nachricht nicht verfallen
darf. Wählen Sie Aus Header
übernehmen aus, oder geben Sie eine Ganzzahl ein, die einer Angabe in Millisekunden
entspricht. Wenn Sie Aus Header übernehmen auswählen,
übernimmt die Eigenschaft den Wert des Feldes 'JMSExpiry' in der JMS-Nachricht, das sich an der
folgenden Position befindet:
|
Nachrichtenpriorität | Nein | Ja | 4 | Diese Eigenschaft weist der Nachricht eine relative Bedeutung zu und kann von
einer empfangenden JMS-Clientanwendung oder einem JMSReply-Knoten zur Nachrichtenauswahl verwendet
werden. Wählen Sie einen Wert zwischen 0 (niedrigste Priorität) und 9 (höchste Priorität), oder wählen Sie Aus Header übernehmen aus. Der Standardwert lautet
4, was eine mittlere Priorität bedeutet.
Die
Prioritäten im Bereich 0 bis
4 sind einer normalen Zustellung zugeordnet.
Die
Prioritäten im Bereich 5 bis
9 sind Abstufungen einer Eilzustellung zugeordnet. Wenn Sie Aus Header übernehmen auswählen, übernimmt
die Eigenschaft den Wert des Feldes 'JMSPriority' in der JMS-Nachricht, das sich an der folgenden
Position befindet:
|
Nachrichtentyp | Nein | Ja | TextMessage (Textnachricht) | Über diese Eigenschaft wird die Klasse der JMS-Ausgabenachricht gesteuert. Der Standardwert lautet TextMessage (Textnachricht).
Gültige Werte sind:
|
Eigenschaft | O | K | Standardwert | Beschreibung | Eigenschaft des Befehls mqsiapplybaroverride |
---|---|---|---|---|---|
Auswertung | Nein | Ja | Übernehmen | Durch diese Eigenschaft wird gesteuert, ob eine Auswertung stattfindet. Folgendes sind gültige Werte:
|
validateMaster |
Aktion bei Fehler | Nein | Nein | Ausnahme | Durch diese Eigenschaft wird gesteuert, was beim Fehlschlagen der Auswertung
geschieht. Diese Eigenschaft kann nur angegeben werden, wenn Auswerten auf Inhalt oder Inhalt und Wert gesetzt ist. Gültige Werte sind:
|
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Ereignisse | Nein | Nein | Ohne | Auf dieser Registerkarte werden Ereignisse angezeigt, die Sie für den Knoten
definiert haben. Standardmäßig sind für keinen Knoten in einem Nachrichtenfluss
Überwachungsereignisse definiert. Über Hinzufügen,
Bearbeiten und Löschen können Sie
Überwachungsereignisse für den Knoten erstellen, ändern oder löschen (Details siehe
Überwachungsereignisquellen mithilfe von Überwachungseigenschaften konfigurieren). Sie können hier angezeigte Ereignisse aktivieren oder inaktivieren, indem Sie das Kontrollkästchen Aktiviert aktivieren oder inaktivieren. |