IRC-Galleria

Repikää siitä....Keskiviikko 07.02.2007 11:25

5. Toteuta yksinkertainen yhden servletin muistinvarainen monenkäyttäjän keskusteluohjelma, jossa käyttäjä voi lisätä html-lomakkeen avulla keskusteluun uusia viestejä, määrittelemän oman kutsumanimensa (nickname) ja viestin. Sekä nimen että viestin pituus kannattaa rajoittaa johonkin järkevään arvoon. Oletusarvoisesti ohjelma näyttää samalla web-sivulla (missä lomakekin on) 20 viimeisintä viestiä. Käytä hyödyksesi Servletin ominaisuutta että se (yleisesti ottaen) pysyy hengissä kunnes se poistetaan (undeploy tai saman palvelun uusi deploy) tai palvelin ajetaan alas. Toisin sanoen kaikkien eri keskustelijoiden viestit voi säilyttää jossain Servletin luokkamuuttujassa esim. tyyppiä Vector. Toisten käyttäjien lähettämien uusien viestien ei tarvitse automaattisesti päivittyä ruudulle ilman käyttäjän reagointia (tämäkin on mahdollista, mutta käytännössä vaatii joko erillisen palvelinprosessin ja/tai framejen ja useamman tiedoston käytön joiden synkroinointi ja lukitus voi olla hankalaa). Huolehdi kuitenkin synkroinnista saman servletin eri säikeiden kanssa. Huomio myös yleisimmät virhetilanteet eli esim. estä tyhjän tai ylipitkän viestin lisäys. Ohjelmassa ei kuitenkaan tarvitsella on ns. spam/flood-suojausta (eli liiallisen viestin tai saman viestin toistamisen estoa… tämähän on käytännössä lähes mahdoton ongelma koska yksi taitava ilkeämielinen käyttäjä voi kuitenkin avata monta eri chat-ikkunaa ja lähettää viestejä kaikista niistä yhtäaikaa).

6. Lisää edellisen kohdan keskusteluohjelmaan ominaisuus, että se servletin kuollessa tallentaa kaikki viestit chatlog.txt-tiedostoon. Servletin käynnistyessä se koittaa lukea vanhat viestit edellä mainitusta tiedostosta ja alustaa keskusteluohjelman viestiruudun vanhoilla viesteillä. Tämän kaltaista toteutusta voisi käyttää esim. vieraskirjan tai keskustelufoorumin toteutukseen. Onko mahdollista että osa lisätyistä viesteistä joskus katoaa? Miksi ja miten?

Etkö vielä ole jäsen?

Liity ilmaiseksi

Rekisteröityneenä käyttäjänä voisit

Lukea ja kirjoittaa kommentteja, kirjoittaa blogia ja keskustella muiden käyttäjien kanssa lukuisissa yhteisöissä.