JMS-Nachrichtenselektor

Ein Nachrichtenselektor ermöglicht einem JMS-Konsumenten eine selektivere Auswahl hinsichtlich der zu empfangenden Nachrichten zu einem bestimmten Thema oder aus einer bestimmten Warteschlange.

Ein Nachrichtenselektor verwendet Nachrichteneigenschaften und Header als Kriterien in Bedingungsausdrücken. Diese Ausdrücke deklarieren unter Verwendung der Booleschen Logik, welche Nachrichten an einen Client (z. B. den JMSInput-Knoten) zugestellt werden sollen.

In der folgenden Tabelle ist der Aufbau eines Nachrichtenselektors dargestellt. Er besteht aus einer Kennung wie beispielsweise dem Header JMSPriority oder einer anwendungsgesteuerten Eigenschaft myProperty1. Die Selektorenzeichenfolge muss einen Operator gefolgt von einem Literal angeben.

Element Gültige Werte
Kennungen
  • Verweise auf Eigenschaften oder Headerfelder (z. B. JMSPriority, myProperty1)
  • Die folgenden Werte sind nicht möglich: NULL, TRUE, FALSE, NOT, AND, OR, BETWEEN, LIKE, IN, IS
Operatoren

AND, OR, LIKE, BETWEEN, =, <>, <, >, <=, >=, IS NULL, IS NOT NULL

Literale
  • Die beiden Booleschen Literale TRUE und FALSE
  • Genaue Zahl-Literale ohne Dezimalzeichen. Beispiele: +25, -399, 40
  • Näherungszahl-Literale. Dabei können diese Literale die Exponentialschreibweise oder eine Dezimalzahl verwenden. Beispiel: -21.4E4, 5E2, +34.4928

Der JMSInput-Knoten stellt für die Angabe von Selektoren eine freie Formatzeichenfolge (PropertySelector) bereit. Diese Selektoren filtern Anwendungseigenschaften oder schließen diese ein. Darüberhinaus verfügt der Knoten über Eigenschaften für bestimmte Headereigenschaften, bei denen die ID implizit ist und vom Knoten generiert wird. Für die Header-Selektoren müssen der Operator- und Literal-Bereich der Zeichenfolge angegeben werden.

Werden mehrere Selektoren angegeben, generiert der Knoten eine kombinierte Selektorenzeichenfolge, bei der die einzelnen Selektorenzeichenfolgen durch den Operator AND verknüpft sind und jeder Bereich der Selektorenzeichenfolge in Klammern gesetzt ist.

Es folgen Beispiele für die einzelnen Selektoreneigenschaften:
Selektoreigenschaft Beschreibung
PropertySelector OrderValue > 100.00

Diese Zeichenfolge wird genau wie dargestellt verwendet.

TimeStamp BETWEEN 1057576423231 AND 10575788993265

Nur Nachrichten, die zwischen diesen beiden Java-Zeitangaben liegen (dabei ist die Java-Zeitangabe seit dem 1. Januar 1970 in Millisekunden definiert), werden an den JMSInput-Knoten zugestellt. In diesem Fall wird der generierten Zeichenfolge die ID JMSTimestamp als Präfix vorangestellt.

Zustellmodus PERSISTENT

Diese Einstellung bedeutet, dass nur Nachrichten, die vom Absender als PERSISTENT markiert wurden, an den JMSInput-Knoten zugestellt werden sollen. In diesem Fall wird der generierten Zeichenfolge die ID JMSDeliveryMode als Präfix vorangestellt.

Priorität >= 5 AND <= 8

Diese Einstellung bedeutet, dass nur Nachrichten, die vom Absender mit der Priorität 5, 6, 7 oder 8 markiert wurden, an den JMSInput-Knoten zugestellt werden sollen. In diesem Fall wird der generierten Zeichenfolge die ID JMSPriority als Präfix vorangestellt.

Nachrichten-ID > WMBRK123456

Durch diese Einstellung werden Nachrichten zurückgegeben, deren Nachrichten-ID größer als der angegebene Wert ist. In diesem Fall wird der generierten Zeichenfolge die ID JMSMessageID als Präfix vorangestellt.

Erneut zugestellt FALSE

Diese Einstellung bedeutet, dass nur Nachrichten vom Knoten empfangen werden, die nicht nicht erneut zugestellt wurden. In diesem Fall wird der generierten Zeichenfolge die ID JMSRedlivered als Präfix vorangestellt.

Korrelations-ID = WMBRKABCDEFG

Diese Einstellung bedeutet, dass nur Nachrichten zurückgegeben werden, deren Korrelations-ID dem Wert WMBRKBABCDEFG entspricht. In diesem Fall wird der generierten Zeichenfolge die ID JMSCorrelationID als Präfix vorangestellt.

Zugehörige Konzepte
JMS-Transaktionalität
Zugehörige Verweise
JMS-Eigenschaften für Anwendungskommunikationsmodelle
Eigenschaften der JMS-Nachrichtendomäne
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009. Alle Rechte vorbehalten.
Letzte Aktualisierung : 2009-02-17 15:49:31

ac24876_