Builder subexpresii

Utilizaţi builderul de subexpresii pentru a construi condiţii cu reguli complexe din subexpresii utilizând AND, OR, NOT şi gruparea în paranteze. Builderul de reguli validează regula atunci când aplicaţi modificările, şi vă avertizează cu privire la parantezele nepotrivite, şi operatorii logici neacceptaţi.

Pentru a vizualiza această pagină a consolei administrative, faceţi clic pe Servere > Tipuri de servere > Rutere la cerere > odr_name > Proprietăţi rutere la cerere > Politici de servicii cluster de servere generice > work_class_name > Adăugare regulă > Builder subexpresii.

Pentru a modifica regulile cu builderul subexpresii, trebuie să aveţi privilegii administrative.

Selectare operand

În funcţie de protocolul selectat sunt afişaţi diferiţi operanzi. Următorul tabel include numele operanzilor aşa cum sunt afişaţi în consolă, operandul actual aşa cum va apărea în expresie, protocoalele valide pe operand şi descrierea pentru fiecare operand.

Tabelul 1. Operanzii şi descrierile lor
Operand afişat Operand Protocoale valide Descriere
Nume aplicaţie aplicaţie IIOP Numele aplicaţiei care conţine EJB.
Gazdă client clienthost HTTP, SOAP, IIOP Numele gazdă client complet calificat. Aceasta este valoarea nume gazdă comandă protocol internet (IP). Acest operand nu suportă operatori numerici cum ar fi >, >=, <, <=.
Port client clientport IIOP Numele portului de client.
Client IPV4 clientipv4 HTTP, SOAP Adresa clientului Internet Protocol Version 4, utilizând tipul de adresare cu patru puncte: n.n.n.n
Client IPV6 clientipv6 HTTP, SOAP Tipul de adresă Internet Protocol Version 6 128-bit x:x:x:x:x:x:x:x a computerului client.
Nume antet cookie cookie$<nume> HTTP, SOAP Un nume de cookie. De exemplu, expresia cookie$My_Cookie_Name='My_Cookie_Value' testează o cerere pentru a vedea dacă conţine un cookie numit My_Cookie_Name cu valoarea My_Cookie_Value. Pentru a testa prezenţa sau absenţa unui cookie particular, utilizaţi una din următoarele expresii:
  • cookie$MyCookieName IS NOT NULL
  • cookie$MyCookieName IS NULL
Nume modul EJB ejbmodule IIOP Numele modulului unui EJB.
Nume EJB ejbname IIOP Numele unui EJB.
Nume metodă EJB ejbmethod IIOP Numele unei metode din EJB.
ID-uri de grup gids$<nume> HTTP, SOAP ID-ul de grup al unei cereri expeditor.
Metodă HTTP HTTPMethod HTTP, SOAP Metoda HTTP pentru cerere. Valorile posibile sunt POST, GET, PUT şi DELETE.
Tipul MIME MIMEType HTTP, SOAP Tipul MIME a cererii.
Port port HTTP, SOAP, IIOP Portul de ascultare unde este furnizat serviciul de către gazdă.
Protocol protocol HTTP, SOAP Protocolul de comunicare care transmite cererea. Protocolele suportate curent sunt HTTP, HTTPS, SOAP şi SOAPS
Nume header cerere header$<nume> HTTP, SOAP

Un nume header şi valoare. De exemplu, expresia header$Host='localhost' testează o cerere pentru a vedea dacă conţine un header gazdă HTTP cu valoarea localhost. Pentru a testa prezenţa sau absenţa unui header gazdă, utilizaţi una din următoarele expresii:

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

Nume parametru integrogare cerere queryparm$<nume> HTTP, SOAP Un nume parametru cerere a fost specificat în URL. Pentru fiecare cerere, există o mapare pereche de nume/valoare a parametrilor de interogare, dacă aceştia există. Ruterul On Demand (ODR) utilizează numele parametrului de interogare cerere ca o cheie pentru a căuta maparea parametrului şi dacă există extrage valoarea pentru a evalua expresia regulii. Dacă regula se potriveşte, atunci este luată acţiunea specificată. Altfel, este utilizată acţiunea implicită pentru clasa de lucru în care expresia este definită.
De exemplu, expresia queryparm$timezone=EST testează o cerere pentru a vedea dacă conţine un parametru de interogare HTTP numit fus orar cu o valoare de EST. Pentru a testa prezenţa sau absenţa unui parametru de interogare, utilizaţi una din următoarele comenzi:
  • queryparm$timezone IS NOT NULL
  • queryparm$timezone IS NULL
Roluri roluri$<nume> HTTP, SOAP Rolul cererii expeditor.
gazdă server serverhost HTTP, SOAP, IIOP Numele gazdă complet calificat al serverului. Acest operand nu suportă operatori numerici cum ar fi >, >=, <, <=.
Server IPV4 serveripv4 HTTP, SOAP Adresa IP a maşinii server utilizează tipul de adresare patru grupe IPv4 n.n.n.n.
Server IPV6 serveripv6 HTTP, SOAP Tipul de adresare IPv6 128-bit x:x:x:x:x:x:x:x urmăreşte RFC 1924 a serverului.
Ora timp HTTP, SOAP, IIOP

Operandul timp are următorul format:

zi_din_săptămână/zi_din_lună/lună/an::oră:minut:secundă
  • Valorile zi_din_săptămână includ duminică, luni, marţi, miercuri, joi, vineri, sâmbătă.
  • Zi_din_lună include valorile de la 1-31.
  • Lună este un număr reprezentând luna, începând cu ianuarie ca valoare 1 şi decembrie ca valoare 12. De exemplu, o valoare numerică 5 reprezintă luna mai.
  • An este anul din 4 cifre. De exemplu, 2007.
  • Oră este ora din zi în 24 de ore.
  • Minute sunt numere întregi din intervalul 0-59.
  • Secunde sunt numere întregi din intervalul 0-59.
Notă: Omisiunile şi metacaracterele nu sunt suportate pentru operandul timp.

Slash-ul înainte (/) este utilizat pentru a separa parametrii de date, două puncte dublu (::) este utilizat pentru a separa parametrii de timp şi dată şi două puncte (:) este utilizat pentru a separa parametrii de zi şi timp. Notaţi că este rezultatul boolean al regulii întregi, în care operandul de timp este utilizat pentru a determina acţiunea de rutare de luat.

ID utilizator uid$<nume> HTTP, SOAP ID utilizator al cererii expeditor.
Portal virtual virtualportal HTTP, SOAP Portalul virtual este cererea URL fără contextul de root pentru modulul web al aplicaţiei WebSphere® Portal. Dacă o cerere dată se potriveşte portalului virtual definit, atunci este luată acţiunea de rutare definită pentru acea regulă.
Expresia XPath xpathexpr SOAP

Expresia şir XPath are un câmp necesar utilizat pentru a conţine expresia XPath şi un câmp opţional pentru definirea spaţiului de nume local. Dacă toate spaţiile de nume conţinute în expresia XPath sunt standard, atunci al doilea câmp poate fi opţional. Dacă există mai multe spaţii de nume locale, atunci separaţi-le cu virgulă (,). Următorul este un exemplu al unei expresii xpathexpr cu definirea unui spaţiu de nume local:

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

Operator

  • = Operatorul de egalitate exprimă potrivirea sensibilităţii la majuscule.
  • <> Operatorul de inegalitate exprimă faptul că valoarea operandului nu este egală cu valoarea pe care aţi introdus-o.
  • >Operatorul mai_mare_de se utilizează cu numere.
  • >= Operatorul mai_mare_de sau egal se utilizează cu numere.
  • < Operatorul mai_mic_de se utilizează cu numere.
  • <= Operatorul mai_mic_de sau egal se utilizează cu numere.
  • AND: Pentru expresia xx AND yy, potrivirile care conţin ambele xx, yy.
  • BETWEEN: Acest operator este utilizat cu AND pentru a selecta un interval de valori de la cea mai mică valoare până la cea mai mare. Împreună acestea operează în numere şi date.
  • EXISTS: Acest operator boolean verifică un operand sau rezultatul unei subexpresii compuse, de exemplu, în timpul verificării unor anumite elemente atribute header HTTP.
  • IN: Acest operator exprimă un operand cu valori multiple într-o singură expresie. De exemplu, dacă, pentru un operand numit port, doriţi să se exprime faptul că valoare portului poate fi oricare sau toate valorile cum ar fi 9080, 9090, 9091, fragmentul expresiei este port IN (9080,9090,9091). Cum valorile din interiorul parantezelor sunt exprimate în funcţie de tipul de dată al portului. Dacă portul este un întreg, sintaxa corectă este valoarea fără ghilimele. Dacă portul este un şir, sintaxa corectă este port IN (9080,9090,9091).
  • IS NULL: Acest operator exprimă faptul că o validare a unei interogări arată că parametrul cerut nu există.
  • IS NOT NULL: Acest operator exprimă faptul că o validare a unei interogări arată că parametrul cerut există.
  • LIKE: Acest operator exprimă potrivirea de tipar pentru valoarea operandului de tip şir. Valoarea trebuie să conţină metacaracterul procent (%) în poziţia unde începe potrivirea de tipar. De exemplu expresia, host LIKE %blanca, potriveşte cuvântul blanca, sau orice alt cuvânt care se termină cu blanca, în timp ce expresia host LIKE blanca% potriveşte cuvântul blanca sau orice alt cuvânt care începe cu blanca, şi expresia host LIKE %blanca% potriveşte cuvântul blanca cu orice alt cuvânt care înglobează blanca în el.
  • NOT: Pentru NOT xx, acest operator exprimă potriviri care nu conţin xx.
  • OR: Pentru xx OR yy, acest operator exprimă egalităţile care conţin fie xx, yy.

Valoare

În funcţie de operatorul pe care îl alegeţi, tastaţi o valoare pentru subexpresia pe care vreţi să o creaţi.

Construire expresie

Generaţi subexpresia ca rezultat al operandului, operatorului şi valorilor pe care le-aţi specificat.

Subexpresie generată

Copiaţi şi lipiţi această subexpresie în regula dumneavoastră.



Nume fişier: wc_rulebuilder_detail.html