Servlet
Nov. 05- 11.
Határidő: Nov. 25.
Követelmények |
Laborházik |
Dokumentáció
E laborházi lényege:
- servletek használata
megj.: itt még használni fogjuk a servletet megjelenítésre IS (igaz, hogy csak nagyon egyszerű
tartalom megjelenítésére, ... de legalább kiderül, mennyire kényelmetlen erre használni :)...). A későbbiekben
a HTML oldalak generálására JSP-ket fogunk használni, a servlet számára marad a vezérlés megoldása.
!!! Kerüljük az adatok servlet-szintű mezőkben való tárolását. A szesszió-specifikus
adatok értelemszerűen a szesszió hatókörbe legyenek lementve.
Követelmények:
- Beküldendő csatolt állomány neve: W04_<sorszám>_<felhasználónév>.zip (Pl. W04_05_xy52142.zip)
- "Subject":W04_<sorszám> (pl. W04_05)
- A levél tartalma:
hallgató neve, csoportja, a feladat száma és szövege
Laborházik:
Megj.: A feladat I. részében leírtak mindenkire vonatkoznak, a II. részben a feladat egyénre szabott része szerepel
(mindenki a sorszáma szerinti feladatot választja).
I.
Készítsünk egy servlet alapú bejelentkező-oldalt, mely a következőképpen működik:
- "alkalmazasnev/login.do" URL-re egy felhasználónevet és jelszót bekérő oldalt jelenít meg
- az adatok elküldésére (submit gomb) leellenőrzi a felhasználónév és jelszó helyességét, melyek a servlet
init paramétereiként vannak megadva
- helyes adatok esetén továbbít a II. pontnál megadott servletre
- helytelen beviteli adatok esetén ismét a bejelentkező oldalt jelenítse meg a megfelelő hibaüzenetekkel és a form
tartalmazza a már bevitt -helytelen- adatokat.
A következő hibalehetőségeket ellenőrizzük:
- hiányzó felhasználónév
- hiányzó jelszó
- helytelen felhasználónév/jelszó
- sikeres bejelentkezés esetén tároljuk el a szesszióban a felhasználó nevét
- ha már sikeresen bejelentkezett a felhasználó, akkor az "alkalmazasnev/login.do" URL irányítson át a II. pontnál megadott
servletre
Az átirányításokat (ezúttal) a servlet végezze (NE szűrőt használjunk).
II.
-
Véletlenszerűen generált szám kitalálása
Gombnyomásra generáljunk egy véletlenszerű egész számot 0 és max. között (ahol a max. értéket a servlet init
paramétereként adjuk meg), és tároljuk ezt a számot a szesszióban.
A servlet tippeket kér ismételten mindaddig, amíg a számot ki nem találjuk. Minden egyes tipp után kiírja, hogy az
illető szám kisebb-e vagy nagyobb, mint a szesszióban levő szám (vagy hibaüzenetet, amennyiben a megadott érték
nem alakítható számmá, esetleg nincs a [0 .. max.] intervallumban).
Kitalált szám esetén gratuláljon, illetve jelenjen meg ismét az a gomb, amivel újrakezdhető a játék.
-
Aritmetikai műveletek sorozata
Az oldalon az alábbiak jelenjenek meg:
- Eddigi részeredmény (a kezdeti értéket a servlet init paraméteréből kapjuk)
- Művelet (összeadás, kivonás, szorzás vagy osztás műveletek közül választhatunk, pl.
legördülő listából vagy rádiógombok közül)
- Következő operandus (egész számot kérünk be)
- Műveletvégzés - (submit gomb)
Submit-ra a servlet végezze el a következő műveltet, frissítve az eddigi részeredményt, illetve további művletvégzésre
adva lehetőséget. Hibás (vagyis nem egészszám) operandus megadása esetén írjunk ki hibaüzenetet, a részeredmény
pedig maradjon változatlan.
-
Szövegszínezés
Az oldalon az alábbiak jelenjenek meg:
- Egy szövegdoboz (textarea), melybe tetszőleges szöveget kérünk be
- Háttérszín (legördülő listából lehessen kiválasztani egy színt)
- Szövegszín (ismét egy legördülő listából lehessen kiválaztani egy színt)
mindkét lista esetén az első elem az legyen, hogy "válassz egy színt"
- Színezés (submit gomb)
Submit-ra a kiválasztás alapján színezett szöveg is jelenjen meg. Ha a háttér vagy szövegszín nincs kiválasztva,
akkor kezdetben a servlet megfelelő init paramétereként megadott színt kell használni, különben a legutóbb megadott színeket.
Megfelelő hibaüzenet jelenjen meg, ha nincs szöveg megadva vagy ha a háttérszín illetve a szöveg színe megegyezik.
-
Hárombetűs szavak
(Tudnivaló: van egy olyan játék, mely szerint egy hárombetűs szóból kiindulva el kell jutni egy másik hárombetűs
szóhoz -értelmes szavakon keresztül- úgy, hogy mindig csak egyetlen betűt cserélhetünk ki)
Kezdetben az oldalon az alábbiak jelenjenek meg:
- kiinduló szó (ha nincs megadva, akkor a servlet megfelelő init paraméteréből vegye)
- végső szó (ha nincs megadva, akkor a servlet megfelelő init paraméteréből vegye)
- Játék indul (submit gomb)
Játék indításra kérje be a következő szót, illetve írja ki az addig beírt helyes szavak listáját.
elő hibaüzenetet írjunk ki, ha a beírt szó ne három hárombetűs vagy több, mint egy betűben különbözik az
előzőtől.
Ha eljutottunk az utolsó szóig, töröljük az eddigi listát és indulhasson újra a játék.
-
Válogatás (egyik listából a másikba)
Az oldalon az alábbiak jelenjenek meg:
- két lista egymás mellett (az elsőt kezdetben a servlet init paramétereivel töltjük fel, a második legyen üres)
- a két lista között egy nyilat tartalmazó gomb, melyre kattintva a baloldali listából a kiválasztott
elem át lesz helyezve a jobboldali listába
- Új adat bevitele (a baloldali listába) -szövegmező és a hozzá tartozó submit gomb
- "Reset" gomb, mely visszaállítja az eredeti állapotot
Amennyiben olyan elemet próbálunk bevinni, ami már benne van a baloldali listában (vagy át lett helyezve a jobboldaliba),
írjunk ki hibaüzenetet.
Hasznos hivatkozások: