Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 13

CS230 Distribuirani sistemi

PROJEKAT:

Informacioni sistem za Training centar Naui

Autor: Slobodan Minic slobodanminic.564 @metropolitan.ac.rs Asistent: Mateja Opaci mateja.opacic@metropolitan.ac.rs U Beogradu, septembar, 2013.

Sadraj

Uvod.3

Ciljevi..3

Opis.7

Tehnologije4

Zakljuak...10

Literatura..11

Uvod
Abstrakt: Traning Centar Naui (Za novi traning centar treba kreirati web aplikaciju koja bi im omoguila da vode traning centar i da omogue potencijalnim klijentima da se prijave za kurseve preko interneta. Takoe treba omoguiti da potencijalni predavai mogu sami da se prijave. Administrator e da odobri nekom predavau da moe da radi za centar nakon to proita njegove podatke i CV. Predavai sami predlau temu predavanja, opis predavanja, trajanje predavanja, itd Administrator za predlona predavanja definie termine odravanja, i nakon toga posetioci sajta vide budue kurseve za koje mogu da se prijave.)

Aplikacija koja omoguava da se korisnici prijave preko interneta za eljeni kurs.Administrator omoguava predavau da pristupi sam ,takoe mu omoguava da radi za centar nakon to pogleda njegov CV i podatke.Web aplikacija Naui treba da sadri poetnu stranu za opis objekata i djelatnosti.Na vrhu je glavni meni sa ostalim stranicama.Postoji Log In registracija za potencijalne predavae i predavae koji e automatizovati prijavu za sljedei kurs.Svaki posjetilac sajta moi e da se prijavi za kurs.Radi bolje promocije Training Centra Naui na glavnoj strani treba unjeti slike koje se smjenjuju pomou Java scripte sadrine : Naziv kursa i ime predavaa koji je u toku.Strane O nama,Kursevi,Predavai i Kontakt su proste i sadre samo informacije vezane za strane tj. ne sadre komunikaciju sa serverom .Log In forma je sloena i ona zahtijeva komunikaciju sa serverom.Na ovom projektu koristiu web service,Enterprise Java Bean EJB3 i Apache Tapestry 5. Web aplikacija NAUI nudi napredne kurseve iz oblasti Data Warehouse.Generalni je zastupnik SAP Sybase za SCG.Ova aplikacija treba da pomogne korisnicima sajta da se bolje upoznaju sa kursevima koje nudi centar Nauci.Kursevi traju 3 nedelje posle kojih kandidat polaze zavrsni ispit.Centar kandidatu daje diplomu o polozenom kursu i tako mu pomaze da nadje posao dosta lako.Na pocetnoj strani sajta predavaci izlazu termin i materijal sledeceg kursa,tako da korisnik moze detaljno da se informise sta su prednosti kursa,koliko traje kurs,kojeg stepena dobija licencu po zavrsetku kursa itd.Training centar

Nauci zaposljava nove kadrove-predavace.Predavac koji zeli da predaje u ovom centru treba da posalje svoje podatke tj.CV na adresu administrarora.Na pocetnoj strani mora da postoji jedna LOGIN forma koja omogucava predavacu da azurira svoje materijale na strani KURSEVI.Na glavnoj strani se nalaze sljedece NAVIGATION PAGE: Onama,Predavaci,Kursevi ,Kontakt.Strana Onama treba da sadrzi tekst koji se odnosi na sami Centar NAUCI tj. Od kad datira,sta su mu ciljevi,koliko ljudi zaposljava itd.Strana Predavaci sadrzi tekst koji se odnosi na zvanje predavaca,njegovo radno iskustvo,licni kontakt itd.Strana Kursevi sadrzi tekst o definiciji kurseva za koje se prijavljuje kandidat.Detaljan tekst o alatu na kojem se kurs zasniva,u ovom slucaju govorimo o Power Designer-u 15.Takodje tekst o Opisu kursa,Ciljeve,Ko treba da pohadja i predznanje.Strana Kontakt sadrzi tekst o osnovnim informacijama Training Centra : Adresa,tel,mail itd. Ove navedene strane su proste sadrze samo informacije,ne sadrze komunikaciju sa serverom.Login strana je komplikovanija i sadrzi komunikaciju sa serverom.Na strani Login nalaze se dva textfielda u koja se unose Username i Password,takodje se nalazi jedno dugme koje obavlja funkciju logovanja.Kada se unesu podatci komunicira se sa bazom preko Web servisa i tada se vrsi provjra usernema i passworda. Imamo jedan web servis (WSGate) preko koga ide cela komunikacija. On je napravljen nad GateBean-om. Imamo entity beanove koji su generisani iz baze, nad njima sessionEntity beanove i beanove sesije koji sluze kao posrednik izmedju njih.Tehnologije na kojoj je web aplikacija zasnovana su: Klijentski dio radjen je u tapestry5,a biznis dio u EJB Beans 3.0 Aplikacija je radjena na Java Enterprise platformi.

[1] Java tehnologija je i programski jezik i platforma. Java je OO programski jezik visokog nivoa koji ima posebnu sintaksu i stil. Java platforma je posebno okruenje u kojem se Java aplikacije izvravaju. Java tehnologija nudi progarmerima izbor od tri verzije Java platforme u zavisnostii od njihovih potreba,a to su: Java tehnologija na personalnim raunarima (Java Standard Edition - Java SE) , Java tehnologija u srednjim i velikim poslovnim sistemima (Java Enterprise Edition - Java EE) Java tehnologija u mobilnim i malim ureajima (Java Micro Edition - Java ME) Web aplikacija Nauci je zasnovana na JEE platformi.

Java Enterprise Edition prvenstveno je namijenjen za srednje i visoko sloena poslovna rjeenja. Java EE je skup ogromnog broja radnih okvira (engl. framework) i tehnologija kao to su JSP, servlets, EJB...) koji razvoj sloenih rjeenja ine jednostavnijim. Ova tehnologija nudi klase visokog nivoa koje se koriste za umreavanje, sigurnost, pristup bazama podataka, za razvoj grafikog korisnikog interfejsa GUI i XML parsiranje.Takoe, tu je i virtuelna maina, razvojni alati, implementacione tehnologije, biblioteke klasa i alati koji se obino korste za aplikacije u Java tehnologiji. Java EE je razvijena kroz Community Process-JCP koji je odgovoran za sve Java tehnologije. Tu postoje strune grupe sastavljene od zainteresovanih strana koje su stvorili Specification Requests-JSR za definisanje razliitih Java EE tehnologija. Rad JCP zajednice pomae da bi se osigurala stabilnost aplikacija u Java tehnologiji i kompatibilnost razliitih platformi

Tipina Enterprise aplikacija se sastoji od kombinacije slijedeih komponenata: Enterprise JavaBean (EJB) moduli (pakovani kao JAR datoteke) Web moduli (pakovani kao WAR datoteke) Adapetri resursa (engl. esource adapters) (pakovani kao RAR datoteke) Aplikacioni klijent moduli Dodatne JAR datoteke koje sadrr zavisne klase (engl. dependent classes) ili druge komponente koje zahtijevaju aplikacije;

EJB Enterprise JavaBeans-EJB EJB je pisan u Java programskom jeziku, enterprise bean je server-side komponenta koji kapsulira poslovnu logiku aplikacije. Poslovna logika je programski kod koji ispunjava zadatak aplikacije. U aplikacijama upravljanja zalihama, na primjer, enterprise beans implementiraju poslovnu logiku metodama koje se zovu checkInventoryLevel i orderProduct. Pozivajui ove metode, klijenti

mogu pristupiti servisima zaliha koje prua aplikacija. EJB tehnologija je komponenta arhitekture na strani servera (engl. server-side component arhitecture) za Java Platform, Enterprise Edition (Java EE) i modularnu izgradnju enterprise aplikacija. Enterprise beans kao Java EE komponente na strani servera se izvravaju unutar EJB kontejnera i sadre poslovnu logiku jedne enterprise aplikacije. EJB verzije : IBM EJB, 1997 Sun Microsystems-EJB 1.0 i 1.1, 1999 Java Community Process-JSR JSR 19-EJB 2.0 JSR153-EJB 2.1 JSR 220-EJB 3.0 JSR 318-EJB 3.1 Web servisi

Web servisi su klijent i server aplikacije koje komuniciraju preko World Wide Webs-WWW i HyperText Transfer Protocol-HTTP protokola. Obezbjeuju standardni nain interoperabilnosti izmeu softverskih aplikacija koje se izvravaju na razliitim platformama i radnim okvirima. Nude veliku interoperabilnost i proirenje mogunosti zahvaljujui korienju XML tehnologije.

Enterprise re oznaava velike i sloene sisteme. Enterprise Java Beans-i su kreirani upravo za takve sisteme. Kreirati veliki enterprise sistem od standardne jave predstavlja veliki problem jer mnogi problemi koji ne postoje kod desktop i malih web aplikacija su kod enterprise sistema od kljunog znaaja. U nekoliko najznaajnijih moemo ubrojiti: mogunost velikog porasta broja klijenata, rad sa ogromnim koliinama podataka, aplikacija mora da se izvrava na veem broju servera, vie korisnika pristupa istim podacima, potreba za pouzdanim transakcijama,postojanje veeg broja klijentskih programa koji pristupaju serverskom delu.

Tipovi EJB3 Beanova: Session Bean se tako zove jer je zaduen za poziv iz sesije, to znai da e isti poziv za dva razliita klijenta kreirati dva razliita Session beana i svaki e opsluiti svog klijenta. Ovim postupkom se uvode mehanizmi za obradu velikog broja klijenata. Jedan Session Bean moe biti stateful to znai da postoji due tokom sesije, a moe biti i stateless to znai da u sebi ne sadri ni jedan podatak koji treba da postoji due od jednog poziva.Stateless Beani su poeljniji u velikim aplikacijama jer ne zauzimaju prostor i brzo se obrauju. Kad god je mogue treba teiti stateless bean-ovima. Naravno u situacijama kada neki podatak treba da ima dui ivotni vek, dui od jednog poziva, treba koristiti stateful bean-e. Svi session beans-i podrazumevaju neku vrstu sinhrone komunikacije. Asinhrona komunikacija se postie upotrebom Message-Driven Bean-a. Ovi Bean-ovi oslukuju da li je dolo do pojavljivanja poruke i onda odgovaraju. Odnosno obrade i poalju odgovor na poruku. Ovi Beanovi su uvek stateless. Poruka moe doi od drugog Bean-a, klijenta tog servera ili neke druge aplikacije.[1]

Opis

Ovako izgleda pocetna strana:

Pocetna strana sadrzi opis objekta i delatnosti. Na vrhu strane je glavni meni sa ostalim stranicama. Ispod njega dolaze slike, koje se menjaju pomocu java skripte. Trenutno na screenshoot-u se prikazuje jedna slika, pa ne mozemo da vidimo ostale slike. Na svakih par sekundi

se menja slika i dolazi nova pomocu java skripte. Ispod te slike dolazi naslov, pa sredisnji deo. U sredisnjem dijelu nalazi se spisak predavaa i kurseva koji su u toku.Takodje datum kada startuje novi kurs.Na dnu pocetne stranice nalazi se adresa na koju potencijalni predavai alju svoj CV i podatke.

Strana za logovanje izgleda ovako:

Na njoj se nalaze dva TextField-a koja sluze za unos username-a i password-a i jedno dugme koje sluzi za logovanje. Kada se unesu podaci, preko web servisa se komunicira sa bazom i proverava dal postoji username i da li je tacan password. Kod koji poziva web servis:

@WebServiceRef(wsdlLocation = "http://localhost:8080/WSGateService/WSGate?wsdl") private static WSGateService service;

try { // Call Web Service Operation service = new nauci.bean.business.WSGateService(); nauci.bean.business.WSGate port = service.getWSGatePort(); korisnik = (Korisnik) port.login(user.getUsername(), user.getPassword()); } catch (Exception ex) { System.out.println("ex = " + ex); }

On kontaktira bean-ove.

Arhitektura ejb dela izgleda ovako:

Na ovom projektu naucio sam vise o tehnologijama koje sluze za programiranje velikih informacionih sistema. Naucio sam nesto vise o

Java EE i Java Beans-u. Takodje sam naucio vise o web servisima i komunikacijama izmedju klijentskog dela i biznis dela. Aplikacija moe da se unaprijedi i pobolja.Naveo bi da klijentski dio moe da bude jednostavniji a funkcionalniji.Biznis dio takodje moe da se unaprijedi i da Web aplikaciju Naui dovede u koristan dio za potencijalne korisnike i predavae kurseva.

Literatura

[1]Predavanja i vjebe CS230 autor prof.dr Nedad Mehi [2] http://www.freewebsitetemplates.com/

You might also like