# Részkifejezés összeépítő

A részkifejezés-készítő használatával összetett szabályfeltételek állíthatók össze részkifejezésekből AND, OR, NOT és zárójeles csoportosítással. A szabály összeállító érvényesíti a szabályt a módosítások alkalmazásakor és figyelmeztet a hibásan párosított zárójelekre és a nem támogatott logikai operátorokra.

Az adminisztrációs konzol oldal megjelenítéséhez kattintson a Kiszolgálók > Kiszolgálótípusok > Igény szerinti útválasztók > odr_neve > Igény szerinti útválasztó tulajdonságai > Általános kiszolgálófürt szolgáltatási irányelvek > munkaosztály_neve > Szabály hozzáadása > Részkifejezés-készítő lehetőségre.

A részkifejezés összeállítóval a szabályok módosításához adminisztrátori adminisztrációs jogosultságokra van szüksége.

## Operandus kiválasztása

A kijelölt protokolltól függően eltérő operandusok jelennek meg. A következő tábla a konzolon megjelenített operandus neveket, a tényleges operandust, amint az a kifejezésben megjelenik, az operandusonkénti érvényes protokollokat és az egyes operandusok leírását tartalmazza.

1. táblázat: Operandusok és leírásaik
Megjelenített operandus | Operandus | Érvényes protokollok | Leírás
--- | --- | --- | ---
Alkalmazás neve | `alkalmazás` | IIOP | Azon alkalmazás neve, amelyben az EJB található.
Ügyfélhoszt | `clienthost` | HTTP, SOAP, IIOP | A teljes képzésű ügyfél állomásnév. Ez az internet protokoll (IP) parancs állomásnév értéke. Ez az operandusnem támogat olyan numerikus operátorokat, mint a `>, >=, <, <=`.
Ügyfél port | `clientport` | IIOP | Az ügyfél port neve.
Ügyfél IPV4 | `clientipv4` | HTTP, SOAP | Az ügyfél 4. változatú internet protokoll címe a pontozott négyes címtípus használatával: `n.n.n.n`
Ügyfél IPV6 | `clientipv6` | HTTP, SOAP | Az ügyfél számítógép 6. változatú internet protokoll `x:x:x:x:x:x:x:x` típusú 128-bites címe.
Cookie fejléc neve | `cookie$<név>` | HTTP, SOAP | Egy cookie neve. Például, a `cookie$My_Cookie_Name='My_Cookie_Value'` kifejezés egy kérést tesztel, hogy ellenőrizze, hogy az tartalmaz-e Saját_Cookie_Neve nevű cookie-t Saját_Cookie_Érték értékkel. Az adott cookie jelenlétének vagy hiányának teszteléséhez használja a következő kifejezések egyikét: cookie$MyCookieName IS NOT NULL cookie$MyCookieName IS NULL
EJB modul neve | `ejbmodule` | IIOP | EJB modul neve.
EJB név | `ejbname` | IIOP | Az EJB neve.
EJB metódus neve | `ejbmethod` | IIOP | Az EJB metódus neve.
Csoportazonosítók | `gids$<név>` | HTTP, SOAP | A kérésküldő csoport azonosítója.
HTTP metódus | `HTTPMethod` | HTTP, SOAP | A kérés HTTP metódusa. A lehetséges értékel a POST, GET, PUT és DELETE.
MIME típus | `MIMEType` | HTTP, SOAP | A kérés MIME típusa.
Port | `port` | HTTP, SOAP, IIOP | A figyelőport, ahol a szolgáltatás a gazdán biztosított.
Protokoll | `protokoll` | HTTP, SOAP | A kérést továbbító kommunikációs protokoll. A jelenleg támogatott protokollok a HTTP, HTTPS, SOAP és SOAPS
Kérés fejléc neve | `header$<név>` | HTTP, SOAP | A fejléc neve és értéke. Például, a `header$Host='localhost'` kifejezés egy kérést tesztel, hogy lássa, hogy tartalmaz-e HTTP hosztfejlécet localhost értékkel. A hosztfejléc jelenlétének vagy hiányának teszteléséhez használja a következő kifejezések egyikét: `header$Host IS NOT NULL ,`header$Host IS NULL``
Kérés lekérdezés paraméter neve | `queryparm$<neve>` | HTTP, SOAP | A kérés URL címen megadott lekérdezés paraméter név. Minden egyes kéréshez megtalálható a lekérdezési paraméterek név/érték párja, ha léteznek. Az igényalapú útválasztó (ODR) a kérés lekérdezési paraméter nevet használja a paraméter leképezés keresésének kulcsaként, és ha az létezik, akkor az értéket kibontja a szabály kifejezés kiértékeléséhez. Ha a szabály egyezik, akkor a megadott tevékenység végrehatásra kerül. Ellenkező esetben azon munkaosztály alapértelmezett tevékenysége kerül végrehajtásra, amelyben a kifejezés meg van határozva. Például a `queryparm$timezone=EST` kifejezés kérést tesztel, hogy megállapítsa, a kérés tartalmaz-e `timezone` nevű HTTP lekérdezési paramétert `EST` értékkel. Egy lekérdezési paraméter jelenlétének vagy hiánynak teszteléséhez használja a következő parancsok egyikét: `queryparm$időzóna IS NOT NULL` `queryparm$időzóna IS NULL`
Szerepek | `roles$<név>` | HTTP, SOAP | A kérés küldőjének szerepe.
Kiszolgáló gazda | `serverhost` | HTTP, SOAP, IIOP | A kiszolgáló teljes képzésű állomásneve. Ez az operandus nem támogatja az olyan numerikus operátorokat, mint a `>, >=, <, <=.`
Kiszolgáló IPV4 | `serveripv4` | HTTP, SOAP | A kiszolgáló számítógép IP címe az IPv4 pontozott négyes címtípus (n.n.n.n.) használatával.
Kiszolgáló IPV6 | `serveripv6` | HTTP, SOAP | Az IPv6 x:x:x:x:x:x:x:x típusú 128-bites címe a kiszolgáló számítógép RFC 1924 kérése után.
Idő | `time` | HTTP, SOAP, IIOP | Az idő operandus formátuma a következő: `HétNapja/HónapNapja/hónap/év::óra:perc:másodperc` HétNapja értékek a Sun, Mon, Tue, Wed, Thu, Fri, Sat. HónapNapja az 1-31 értékekkel bírhat. A hónap egy szám, amely a hónapot képviseli, ahol január az 1. és december a 12. Például az 5 számérték a május hónapot jelöli. Az év az évszám 4 számjegyen. Például: 2007. Az óra a nap órája 24 órás felbontásban. perc egész szám 0 és 59 között. másodperc egész szám 0 és 59 között. Megjegyzés: A kihagyások és helyettesítő karakterek nem támogatottak az idő operandus esetén. Az osztásjel (/) dátum paraméterek elválasztására használható, a dupla kettőspont (::) a dátum és időparaméterek elválasztására, és a kettőspont (:) egy adott nap idejét meghatározó paraméterek elválasztására szolgál. Vegye figyelembe azt, hogy ez annak a teljes szabálynak a logikai eredménye, amely az idő operandust használja és meghatározza a továbbítási tevékenységet.
Felhasználói azonosító | `uid$<név>` | HTTP, SOAP | A kérés küldőjének felhasználói azonosítója.
Virtuális portál | `virtualportal` | HTTP, SOAP | A virtuális portál a kérés URL címe, mínusz a WebSphere® Portal alkalmazás webmoduljának kontextusgyökere. Ha egy adott kérés megfelel a meghatározott virtuális portálnak, akkor a szabályhoz meghatározott útválasztási tevékenység kerül végrehajtásra.
XPath kifejezés | `xpathexpr` | SOAP | Az XPath karaktersorozat kifejezés egy kötelező mezővel rendelkezik, amelynek a XPath kifejezést kell tartalmaznia és egy elhagyható mezővel a helyi névterek meghatározásához. Ha az XPath kifejezésben lévő minden névtér általános, akkor a második mező elhagyható lehet. Ha több helyi névtér van, akkor veszővel válassza el azokat (,). Az alábbiakban a xpathexpr egy példája látható egy helyi névtér meghatározással: `xpathexpr$/soap:Envelope/soap:Body/m:getTimeZone/n:clientId$m\\=http://test.classify.ws.ibm.com,n\\=http://test2.classify.ws.ibm.com = \\'1000\\' vagy IS NOT NULL művelet`

## Operátor

- = Az egyenlőség operátor a kis- és nagybetűket megkülönböztető egyezést fejez ki.
- <> A nem egyenlő operátor azt fejezi ki, hogy az operandus nem egyezik meg a megadott értékkel.
- > A nagyobb, mint operátort számokkal használhatja.
- >= A nagyobb, mint vagy egyenlő operátort számokkal használhatja.
- < A kisebb, mint operátort számokkal használhatja.
- <= A kisebb, mint vagy egyenlő operátort számokkal használhatja.
- AND: Az `xx` AND `yy` olyan találatokat fejez ki, melyek az `xx` és az `yy` elemet egyaránt tartalmazzák.
- BETWEEN: Ez az operátor az AND operátorral kerül felhasználásra egy olyan értéktartomány kiválasztásához, mely az első vagy alacsony, illetve az utolsó vagy magas értéket is tartalmazza. Együtt számokon és dátumokon hajthatók végre.
- EXISTS: Ez a logikai operátor az operandus jelenlétét vagy egy összetett részkifejezés eredményét ellenőrzi, például adott HTTP fejlécelem-attribútumok meglétének vizsgálata során.
- IN: Ez az operátor egy operandust fejez ki egyetlen kifejezésben több értékkel. Ha például a `port` nevű operandus esetében azt szeretné kifejezni, hogy a portérték a következők tetszőleges eleme lehet: `9080`, `9090`, `9091`, akkor a kifejezéstöredék: `port IN (9080,9090,9091)`. Az, hogy egy szögletes zárójelben lévő értékek hogyan kerülnek kifejezésre, függ a port adattípusától. Ha a port egész szám, akkor a helyes szintaxis az értékek idézőjelek nélkül. Ha a port egy karaktersorozat, kkor a helyes szintaxis: `port IN (9080,9090,9091)`.
- IS NULL: Ez az operátor kifejezi, hogy a lekérdezés érvényesítése azt jeleníti meg, hogy a kért paraméter nem létezik.
- IS NOT NULL: Ez az operátor kifejezi, hogy a lekérdezés érvényesítése azt jeleníti meg, hogy a kért paraméter létezik.
- LIKE: Ez az operátor mintaillesztést fejez ki a karaktersorozat operandus értékekhez. Az értéknek tartalmaznia kell a helyettesítő karakter százalék jelet (%) abban a helyzetben, ahol a mintaillesztés kezdődik. Míg például a `host LIKE %blanca` kifejezés a blanca szóra, illetve a blanca karaktersorozatra végződő minden egyéb szóra illeszkedik, addig a `host LIKE blanca%` a blanca szóra, valamint a blanca karaktersorozattal kezdődő minden egyéb szóra illeszkedik. A `host LIKE %blanca%` kifejezés a blanca szóra, valamint a beágyazott blanca karaktersorozattal rendelkező minden más szóra illeszkedik.
- NOT: A NOT `xx` esetében ez az operátor az `xx` elemet nem tartalmazó esetekben ad találatot.
- OR: Az `xx` OR `yy` esetében ez az operátor azokat a találatokat fejezi ki, melyek az `xx` vagy az `yy` elemet tartalmazzák.

## Érték

A választott operátortól függően írjon be egy értéket a létrehozni kívánt részkifejezéshez.

## Részkifejezés összeállítása

A megadott operandus, operátor és értékek eredményeként előállítja a részkifejezést.

## Részkifejezés előállítása

Másolja és illessze be ezt a részkifejezést a szabályba.

Kapcsolódó információk:
Igény szerinti útválasztó útválasztási irányelvek
Igény szerinti útválasztó szolgáltatási irányelvek
Munkaosztály tagságok és szabályok meghatározása

Fájlnév: wc_rulebuilder_detail.html