Erstellungsprogramm für Unterausdrücke

Verwenden Sie das Erstellungsprogramm für Unterausdrücke, um mit AND, OR, NOT und Gruppierungen in Klammern komplexe Regelbedingungen aus Unterausdrücken zu erstellen. Das Regelerstellungsprogramm validiert die Regeln, wenn Sie die Änderungen anwenden, und gibt Warnungen aus, wenn Klammern nicht korrekt gesetzt sind oder nicht unterstützte logische Operationen verwendet werden.

Klicken Sie zum Anzeigen dieser Seite der Administrationskonsole auf Server > On Demand Router > ODR-Name> Eigenschaften des On Demand Router > Servicerichtlinien für generischen Servercluster > Name_der_Arbeitsklasse > Regel hinzufügen > Erstellungsprogramm für Unterausdrücke.

Wenn Sie Regeln mit dem Erstellungsprogramm für Unterausdrücke ändern möchten, benötigen Sie Verwaltungsberechtigungen.

Operanden auswählen

Je nach ausgewählten Protokoll werden unterschiedliche Operanden angezeigt. Die folgende Tabelle enthält die Operandennamen, wie sie in der Konsole angezeigt werden, den tatsächlichen Operanden, wie er im Ausdruck verwendet wird, die gültigen Protokolle für jeden Operanden und die Beschreibung jedes Operanden.

Tabelle 1. Operanden und ihre Beschreibungen
Angezeigter Operand Operand Gültige Protokolle Beschreibung
Anwendungsname application IIOP Der Name der Anwendung, die die EJB enthält.
Clienthost clienthost HTTP, SOAP, IIOP Der vollständig qualifizierte Name des Clienthosts. Dies ist der Wert für den Hostnamen im IP-Befehl (Internet Protocol). Dieser Operand unterstützt keine numerischen Operatoren wie >, >=, <, <=.
Client-Port clientport IIOP Der Name des Client-Ports.
Client-IPV4 clientipv4 HTTP, SOAP Die IPv4-Adresse (Internet Protocol Version 4) des Clients im Format n.n.n.n.
Client-IPV6 clientipv6 HTTP, SOAP Die 128-Bit-IPv6-Adresse (Internet Protocol Version 6) der Clientmaschine im Format x:x:x:x:x:x:x:x.
Name des Cookie-Headers cookie$<Name> HTTP, SOAP Ein Cookiename. Der Ausdruck cookie$My_Cookie_Name='My_Cookie_Value prüft beispielsweise, ob eine Anforderung ein Cookie mit dem Namen My_Cookie_Name und dem Wert My_Cookie_Value enthält. Mit den folgenden Ausdrücken können Sie prüfen, ob ein bestimmtes Cookie vorhanden ist bzw. fehlt:
  • cookie$MyCookieName IS NOT NULL
  • cookie$MyCookieName IS NULL
Name des EJB-Moduls ejbmodule IIOP Der Modulname einer EJB.
EJB-Name ejbname IIOP Der Name einer EJB.
Name der EJB-Methode ejbmethod IIOP Der Name einer Methode in der EJB.
Gruppen-IDs gids$<Name> HTTP, SOAP Die Gruppen-ID des Anforderungsabsenders.
HTTP-Methode HTTPMethod HTTP, SOAP Die HTTP-Methode für die Anforderung. Die gültigen Werte sind POST, GET, PUT und DELETE.
MIME-Typ MIMEType HTTP, SOAP Der MIME-Typ der Anforderung.
Port port HTTP, SOAP, IIOP Der Empfangsport, an dem der Service auf dem Host bereitgestellt wird.
Protokoll protocol HTTP, SOAP Das Kommunikationsprotokoll, mit dem die Anforderung übertragen wird. Die derzeit unterstützten Protokolle sind HTTP, HTTPS, SOAP und SOAPS.
Name des Anforderungs-Headers header$<Name> HTTP, SOAP

Ein Headername oder -wert. Ein Header-Name und -Wert. Mit dem Ausdruck header$Host='localhost' wird beispielsweise geprüft, ob eine Anforderung einen HTTP-Host-Header mit dem Wert "localhost" enthält. Verwenden Sie einen der folgenden Ausdrücke, um festzustellen, ob der Host-Header vorhanden ist oder nicht:

header$Host IS NOT NULL ,header$Host IS NULL

Name des Anforderungsabfrageparameters queryparm$<Name> HTTP, SOAP Der Name eines Abfrageparameters, der im Anforderungs-URL angegeben ist. Sofern vorhanden, setzen sich die Abfrageparameter aus Name/Wert-Paaren zusammen. Der On Demand Router (ODR) verwendet den Anforderungsabfrageparameter "Name" als Schlüssel bei der Suche der Parameterzuordnung, und sofern vorhanden, wird der Wert aus der Zuordnung extrahiert, um den Regelausdruck auszuwerten. Bei einer Regelübereinstimmung wird die angegebene Aktion ausgeführt. Andernfalls wird die Standardaktion für die Arbeitsklasse ausgeführt, in der der definierte Ausdruck verwendet wird.
Beispielsweise können Sie mit dem Ausdruck queryparm$timezone=’EST’ eine Anforderung daraufhin prüfen, ob sie einen HTTP-Abfrageparameter mit dem Namen timezone und dem Wert EST enthält. Verwenden Sie einen der folgenden Befehle, um zu prüfen, ob ein bestimmter Abfrageparameter vorhanden bzw. nicht vorhanden ist:
  • queryparm$timezone IS NOT NULL
  • queryparm$timezone IS NULL
Rollen roles$<Name> HTTP, SOAP Die Rolle des Anforderungsabsenders.
Serverhost Serverhost HTTP, SOAP, IIOP Der vollständig qualifizierte Hostname des Servers. Dieser Operand unterstützt keine numerischen Operatoren wie >, >=, <, <=.
Server-IPV4 serveripv4 HTTP, SOAP Die IP-Adresse der Servermaschine im IPv4-Format n.n.n.n.
Server-IPV6 serveripv6 HTTP, SOAP Der IPv6-128-Bit-Adresstyp x:x:x:x:x:x:x:x der Servermaschine gemäß RFC 1924.
Zeit time HTTP, SOAP, IIOP
Der Zeitoperand hat das folgende Format: [Wochentag[/Tag_des_Monats[/Monat[/Jahr]]]::][Stunde[:Minute[:Sekunde]]].
  • Die gültigen Werte für Wochentag sind Son, Mon, Die, Mit, Do, Fr, Sa.
  • Die gültigen Werte für Tag_des_Monats sind 1 bis 31.
  • Monat steht für den numerischen Wert, der der den Monat darstellt. 1 steht für Januar und 12 für Dezember. Der numerische Wert 5 gibt beispielsweise den Monat Mai an.
  • Jahr ist die vierstellige Jahresangabe, z. B. 2007.
  • Stunde steht für die Stunde des Tages im 24-Stunden-Format.
  • Die gültigen Werte für Minute sind ganze Zahlen von 0 bis 59.
  • Die gültigen Werte für Sekunde sind ganze Zahlen von 0 bis 59.

Der Schrägstrich (/) wird verwendet, um Datumsparameter zu trennen, der doppelte Doppelpunkt (::), um die Datumsparameter von den Zeitparametern zu trennen, und der Doppelpunkt (:), um die Uhrzeitparameter zu trennen. Das Boolesche Ergebnis der gesamten Regel, in der der Operand "Zeit" verwendet wird, bestimmt die Routing-Aktion, die ausgeführt wird.

Benutzer-ID uid$<Name> HTTP, SOAP Die Benutzer-ID des Anforderungsabsenders.
Virtuelles Portal virtualportal HTTP, SOAP Virtuelle Portale werden in WebSphere Portal Server erstellt, und WebSphere Virtual Enterprise unterstützt diesen Operanden für eine bessere Integration in WebSphere Portal Server. Das virtuelle Portal ist der Anforderungs-URL ohne das Kontextstammverzeichnis für das Webmodul der WebSphere-Portal-Anwendung. Wenn eine Anforderung dem definierten virtuellen Portal entspricht, wird die für diese Regel definierte Routing-Aktion ausgeführt.
XPath-Ausdruck xpathexpr SOAP

Der XPath-Zeichenfolgeausdruck enthält ein erforderliches Feld für den XPath-Ausdruck und ein optionales Feld für die Definition lokaler Namespaces. Wenn alle im XPath-Ausdruck enthaltenen Namespaces Standard-Namespaces sind, ist das zweite Feld optional. Wenn mehrere lokale Namespaces vorhanden sind, müssen sie durch Kommata (,) getrennt werden. Im Folgenden sehen Sie ein Beispiel für einen XPath-Ausdruck (xpathexpr) mit der Definition eines lokalen Namespace:

xpathexpr$/soap:Envelope/soap:Body/m:getTimeZone/n:clientId$m\\=http://test.classify.ws.ibm.com,n\\=http://test2.classify.ws.ibm.com = \\'1000\\' or operation IS NOT NULL

Operator
  • = Der Gleichheitsoperator drückt einen Abgleich aus, bei dem die Groß-/Kleinschreibung berücksichtigt wird.
  • <> Der Nicht-gleich-Operator gibt an, dass der Wert des Operanden ungleich dem eingegebenen Wert ist.
  • > Der Größer-als-Operator wird für Zahlen verwendet.
  • >= Der Größer-gleich-Operator wird für Zahlen verwendet.
  • < Der Kleiner-als-Operator wird für Zahlen verwendet.
  • <= Der Kleiner-gleich-Operator wird für Zahlen verwendet.
  • AND: Für "xx AND yy" sucht der Operator Übereinstimmungen, die sowohl xx als auch yy enthalten.
  • BETWEEN: Dieser Operator wird mit dem Operator AND verwendet, um einen Bereich von Werten auszuwählen, der den ersten (oder niedrigsten) und den letzten (oder höchsten) Wert einschließt. Diese Operationen werden für Zahlen und Datumsangaben verwendet.
  • EXISTS: Dieser Boolesche Operator sucht einen Operanden oder das Ergebnis eines kombinierten Unterausdrucks, wie z. B. bestimmte Attribute im HTTP-Header.
  • IN: Dieser Operator sucht einen Operanden mit mehreren Werten in einem Ausdruck. Wenn Sie beispielsweise für einen Operanden mit dem Namen port ausdrücken möchten, dass der Portwert einem der angegebenen Werte oder allen angegebenen Werten, wie z. B. 9080, 9090 oder 9091 entsprechen kann, geben Sie das Ausdrucksfragment port IN (9080,9090,9091) an. Wie die Werte in den Klammern ausgedrückt werden, richtet sich nach dem Datentyp des Ports. Wenn der Port eine ganze Zahl ist, ist die korrekte Syntax, die Werte ohne Anführungszeichen anzugeben. Ist der Port eine Zeichenfolge, lautet die korrekte Syntax port IN (‘9080’, ‘9090’, ‘9091’).
  • IS NULL: Dieser Operator drückt aus, dass die Validierung der Abfrage ergeben soll, dass der angeforderte Parameter nicht vorhanden ist.
  • IS NOT NULL: Dieser Operator drückt aus, dass die Validierung der Abfrage ergeben soll, dass der angeforderte Parameter vorhanden ist.
  • LIKE: Dieser Operator drückt eine Mustererkennung für Zeichenfolgeoperanden aus. Der Wert muss das Platzhalterzeichen % (Prozentzeichen) an der Position enthalten, mit der die Mustererkennung beginnen soll. Der Ausdruck host LIKE %blanca findet beispielsweise das Wort blanca und alle anderen Wörter, die mit blanca enden, während der Ausdruck host LIKE blanca% das Wort blanca und alle anderen Wörter findet, die mit blanca beginnen. Der Ausdruck host LIKE %blanca% findet das Wort und alle Wörter, die das Wort blanca enthalten.
  • NOT: Für "NOT xx" sucht dieser Operator beispielsweise die Wörter, die xx nicht enthalten.
  • OR: Für "xx OR yy" sucht dieser Operator beispielsweise Wörter, die entweder xx oder yy enthalten.
Wert

Geben Sie je nach ausgewähltem Operator einen Wert für den Unterausdruck ein, den Sie erstellen möchten.

Unterausdruck erstellen

Generiert den Unterausdruck mit dem Operanden, dem Operator und den Werten, die Sie angegeben haben.

Generierter Unterausdruck

Kopiert den Unterausdruck und fügt ihn in Ihre Regel ein.




Information Center von WebSphere Extended Deployment (online)

Zugehörige Informationen
Routing-Richtlinien für On Demand Router
Servicerichtlinien für On Demand Router
Zugehörigkeiten und Regeln für Arbeitsklasse definieren

wc_rulebuilder_detail