Szoftver Tervezési Dokumentáció. Nguyen Thai Binh



Hasonló dokumentumok
A Java EE 5 plattform

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

JAVA webes alkalmazások

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet. Java Web technológiák

S04-2 Elosztott alkalmazások készítése

Földmérési és Távérzékelési Intézet

Oracle Containers for Java - j2ee alkalmazás szerver funkciók. Molnár Balázs Oracle Hungary

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1

Osztott rendszerek, Java EE. Általános bevezető

Üdvözli Önöket A PGY3 tantárgy! Bakay Árpád dr. NETvisor kft (30) arpad.bakay@netvisor.hu

Feltörekvő technológiák: seam, drools, richfaces és társai a JBossban

Osztott alkalmazások fejlesztési technológiái Áttekintés

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István Viczián István

5. rész: A Java EE és az Enterprise Bean réteg. Bakay Árpád dr. NETvisor kft (30)

Enterprise JavaBeans. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Az Enterprise JavaBeans

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Komponens modellek. 3. Előadás (első fele)

Mozgásvizsgálati mérések internetes megjelenítése. Zemkó Szonja - Dr. Siki Zoltán

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

Kézikönyv. EDI beállítások (SetUp)

Flex: csak rugalmasan!

Operációs rendszerek. A Windows NT felépítése

OZEKI Phone System. 4 elengedhetetlen szolgáltatás a jövőbeli vállalati telefonos rendszerek számára. A jövő üzleti telefon rendszere SMS

NAGY TELJESÍTM. Szerzők Dévai. István Automatizálási. és s Alkalmazott Informatikai Tanszék

ÜZLETI I TELLIGE CIA - VIZUALIZÁCIÓ

Enterprise JavaBeans 1.4 platform (EJB 2.0)

MVC desktop alkalmazás esetén. MVC Model-View-Controller. eredete: Model View Controller (MVC) elv Java EE Java alapú Web alkalmazások

Szoftverarchitektúrák. 12. Sorozat portál (követelmény specifikáció)

ALKALMAZÁS KERETRENDSZER

The Power To Develop. i Develop

Operációs rendszerek. Az X Window rendszer

Web-fejlesztés NGM_IN002_1

Microsoft SQL Server telepítése

webalkalmazások fejlesztése elosztott alapon

WWW Kliens-szerver Alapfogalmak Technológiák Terv. Web programozás 1 / 31

Junior Java Képzés. Tematika

Grafikus keretrendszer komponensalapú webalkalmazások fejlesztéséhez

MŰSZAKI KÖVETELMÉNYEK, A KÖRKERESŐ SZOFTVER SPECIFIKÁCIÓJA, KÖLTSÉGVETÉS. A) Műszaki követelmények

Digitális aláíró program telepítése az ERA rendszeren

Bevezetés Működési elv AJAX keretrendszerek AJAX

Hálózati ismeretek. Az együttműködés szükségessége:

Enterprise extended Output Management. exom - Greendoc Systems Kft. 1

<Insert Picture Here> Migráció MS Access-ről Oracle Application Express-re

Adatbázisok elleni fenyegetések rendszerezése. Fleiner Rita BMF/NIK Robothadviselés 2009

Papír helyett elektronikus űrlap. Szabadság és interaktivitás az űrlapkezelésben

SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő PHP folytatás JDBC, ODBC

DAT adatcserefájl AutoCAD MAP DWG mapobject konvertáló program dokumentáció

Adatbázis rendszerek. dr. Siki Zoltán

DSD DSD. Egy országos méretű orvosi adatbázissal kapcsolatos informatikai kihívások. Kovács László Pataki Balázs Pataki Máté MTA SZTAKI DSD

RIA Rich Internet Application

Információ és kommunikáció

Dinamikus terhelés hatására létrejövő deformáció mérése. Dr. Siki Zoltán Moka Dániel BME Általános- és Felsőgeodézia tanszék

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto

G Data MasterAdmin 9 0 _ 09 _ _ # r_ e p a P ch e T 1

Java Web technológiák

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.


Web programoz as

Simon Balázs Dr. Goldschmidt Balázs Dr. Kondorosi Károly. BME, Irányítástechnika és Informatika Tanszék

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet

TRBOnet Térinformatikai terminál és diszpécseri konzol

Nyilvántartási Rendszer

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

NETinv. Új generációs informatikai és kommunikációs megoldások

Produktív környezetben használt, nyílt forráskódú komplex térinformatikai megoldások dr. Siki Zoltán

Készítette: Enisz Krisztián, Lugossy Balázs, Speiser Ferenc, Ughy Gergely

OZEKI Phone System. A jövő vállalati telefon rendszerének 4 alappillére. A jövő üzleti telefon rendszere SMS. Mobil mellékek. Összhang az IT-vel

IPv6 Elmélet és gyakorlat

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem

PHP-MySQL. Adatbázisok gyakorlat

4. rész: Java Enterprise Edition bevezetı. Bakay Árpád dr. NETvisor kft (30)

ContractTray program Leírás

Titkosítás NetWare környezetben

eseményvezérelt megoldások Vizuális programozás 5. előadás

A Java Persistence API PersistenceAPI / 3

Használati utasítás.

FELHASZNÁLÓI DOKUMENTÁCIÓ ÜZEMBEHELYEZÉSI KÉZIKÖNYV

Az OpenScape Business rendszerek egységes architektúrára épülnek: Rugalmas, skálázható és megbízható

Telepítési útmutató a SMART Notebook 10 SP1 szoftverhez

COMET webalkalmazás fejlesztés. Tóth Ádám Jasmin Media Group

Kézikönyv. Keretmegbízás készítés és megrendelés

Bevezetés a Seam keretrendszer használatába

Moodle -egy ingyenes, sokoldalú LMS rendszer használata a felsőoktatásban

OCSP Stapling. Az SSL kapcsolatok sebességének növelése Apache, IIS és NginX szerverek esetén 1(10)

A JGrid rendszer biztonsági architektúrája. Magyaródi Márk Juhász Zoltán Veszprémi Egyetem

Adatbányászat és Perszonalizáció architektúra

Sharpdesk Információs útmutató

A JavaServer Pages (JSP)

Java. Java Message Service. ANTAL Margit. JMS API technológia. ANTAL Margit. Sapientia - EMTE

Kalumet Számlázó. Termék leírás

GIS fejlesztés Web platformra nyílt forráskódú ingyenes eszközökkel

Utolsó módosítás:

Számítógépes Hálózatok. 5. gyakorlat

Információ és kommunikáció

Zimbra levelező rendszer

Adatkezelés. 11. előadás (Entity Beans)

DebitTray program Leírás

S01-7 Komponens alapú szoftverfejlesztés 1

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

Átírás:

Szoftver Tervezési Dokumentáció Nguyen Thai Binh April 2010

1. fejezet Feladat Szimulációs feladat. Célja, hogy reprezentáljunk egy több komponensből álló alkalmazást, amely a megadott témakörnek megfelel, ami nem más, mint az Erdész. A feladat megoldásához, Java Enterprise (JEE) technológiát választottam. Mivel a feladat több komponensből áll, és a kommunikáció módja elengedhetetlen feltétel, ezért, a Java Messaging Services API-t (JMS) választottam, amivel megvalósítom a komponensek közti kommunikációt. 1

2. fejezet JMS 2.1. Bevezetés Szoftver komponensek közötti kommunikáció, amely p2p. 2.1.1. Elvégezhető műveletek: JMS API-val a következő műveletek végezhetőek el egy üzenettel: létrehozás (create) elküldés (send) fogadás (receive) olvasás (read) 2.1.2. Tulajdonságai: Aszinkron A fogadó félnek nem kell kérést invokálni, ahhoz, hogy üzenetet tudjon fogadni. Megbizható JMS API garantálja, hogy egy üzenet csak egyszer legyen fogadva. 2

3. fejezet Session Bean 3.1. Session Bean Bevezetés Szoftver komponens és kliensek közötti session alapú kommunikáicó, amely úgy van kialakítva, hogy egy kliens - egy session - egy thread épül fel. Az egész Bean alapú model, támogatja a több felhasználói hozzáférést, amely egyben támogatja az objektumok szerializálizációját. 3.2. Típusai Statelfull Session Bean Állapottal rendelkező Session Bean, amely támogatja az osztály állapotának eltárolását. Különböző állapotai vannak, amely egyértelműen meghatározza egy klienssel való kapcsolatát. Stateless Session Bean Állapot nélküli Session Bean, amely kérés - kiszolgálás állapotú. Ez azt jelenti, hogy nem tárolja el, a klienssel kapcsolatos információkat. Addig él az objektum, amíg megvan a kapcsolat a klienssel, ezért az Application Server felel. Singleton Session Bean Ez egy statikus objektum, amely csak egyszer jön létre, mint a nevéből is látszik a Singleton tervmintát implementálja. Sajnos ez nem rég lett beletéve az EJB szabványba (EJB 3.1). 3

4. fejezet Entity Bean - EJB réteg 4.1. EJB Bevezetés Ahhoz, hogy kapcsolatot teremtsünk, és kommunikálni tudjunk az adatbázis réteggel egyszerűen és hatékonyan elengedhetetlen az EJB réteg használata. Különböző implementációk vannak erre, amely vagy felhasználja a Sun által implementált szabványt, vagy saját maga írta meg a saját kommunikációs rétegét, mint például a JBOSS vagy Apache. A legfontosabb tulajdonság, ennek a rétegnek, hogy konkurens hozzáférést adjanak egy adat rekordhoz. Ez biztosítva van a persistence manager által. 4.2. Működése Hogyan is működik? Egyszerű POJO-kat (Plain Old Java Object) - egyszerű java objektumok írunk, amelyeket feltüzdelünk különböző annotációkkal. Ezen annotációk definiálják, hogy miként és hogyan kell használni, mely adatbázis objektumot képez le ez az osztály. Például: @EJB Megadja, hogy ez egy EJB típusú objektum. @ID Megadja, hogy a mező egy elsődleges kulcsot definiál a tábla struktúrában. @ManyToMany Megadja, hogy milyen kapcsolatban van más adattáblákkal. @GeneratedValue Megadja, hogy a mező automatikusan van kigenerálva. @Query Megadja, hogy ez egy előre definiált EQL utasítás. 4

5. fejezet JSF - Web réteg 5.1. Bevezetés Ez a réteg felel az adatok, informáicó megjelenítésért. Kliens oldalon fut, általában böngészőben. Itt az szokta okozni a legnagyobb problémát, hogy különböző böngészőkm máshogyan dolgozzák fel a megjelenítést. A rétegen belül több technológia van felsorakoztatva, felhasználói. Technológiák: Ajax Aszinkron módban kommunikál a szerverrel. A HTML fa egy részét küldi csak vissza a kliens oldalra. 3rd party API Library Ezen könyvtárak közé tartozik a Google API, Yahoo, NavTeQ, stb... Portal Portal rendszerek, amely egy valóban komponens alapú fejlesztést támogat és szolgáltat. Pl.: JBoss Portal System. 5.2. Működés JSF - Java Server Faces. Ez egy tag library, amely különböző megjelenítési tag-ket szolgáltat. Ezeket felhasználva egyszerűbben tudunk html oldalakat szerkeszteni, szabványokat nem megsértve. 5

6. fejezet Statikus Model 6.1. Adatbázis Oldali 6

6.2. Szerver Oldali 7

6.3. Kliens Oldali 8

7. fejezet Dinamikus Model 7.1. Együttműködés Kliens Kommunikáció - JMS Célja, hogy megmutassam, hogyan tudunk információt küldeni a szerver felé JMS Komponensen keresztül. Forrester Kommunikáció - Session Bean Célja, hogy megmutassam, hogyan tudunk informáiciót kinyerni, és vissza tölteni a szerver felé Stateless Session Bean keresztül. Push - AJAX technológia - Célja, hogy megmutassam a Push technológia működését, ami nem más mint egy pull mechanizmus, szkript vezérlésével. 9

Diagrammok: 10

7.2. Állapotok Egy hagyományos állapot diagram szenárió, amely kliens-szerver kapcsolatot ábrázolja. Hogyan adunk egy új rekordot az adatbázishoz. 11

12

8. fejezet Szoftver csomagok 8.1. Application Server Application szervernek a JBoss AS 4.2.3 használtam, mivel ez az egyik legmegbizhatóbb. Elindítása Windows környezet alatt a startup.bat, Unix alapú rendszerek alatt startup.sh script-ekkel lehet elindítani. 8.2. Adatbázis szerver Adatbázis szervernek Postgresql 8.4 adatbázis szervert használtam, amely gyors és GPL liszenszel lehet használni. Ahhoz, hogy az application szerver együtt tudjon működni az adatbázissal, felkell telepítenünk postgresql jdbc driver-t. 8.3. Megjelenítésért felelős csomagok richfaces Richfaces egy kibővített verziója a JSF-nek, amely több userinterface komponenseket szolgáltat. exadel - Fiji Grafikonok megjelenítésért felelős program könyvtár. 13

9. fejezet Felhasználói dokumentáció 9.1. Szerver elindítása Ahhoz, hogy használhassuk az alkalmazást, elkell indítani a JBoss alkalmazás szervert. Ezek után, felkell telepíteni a következőket: 1. Simulator EJB projekt. 2. MessageReceiver Message Driven Bean projekt. 3. WebClientAdmin Web Projekt. 4. WebClientViewer Web Projekt. Ezt manuálisan is megtehető, azaz átmásoljuk az EJB.jar file-okat, valamint a web projekteket.war file-okat a jboss_home-ba. cp Simulator.jar $jboss_home/server/default/deploy \ cp MessageReceiver.jar $jboss_home/server/default/deploy \ cp WebClientAdmin.war $jboss_home/server/default/deploy \ cp WebClientViewer.war $jboss_home/server/default/deploy Bekell még másolni postgresql jdbc driver-t a jboss_home-ba. cp postgresql-x-x.jdbc4.jar $jboss_home/server/default/lib Ezek után már elindíthatjuk a szervert a run.sh script-el. 14

9.2. Adat felvitel Ebben a fejezetben bemutatom az adat felvitel réteg használatát. Ehhez, nem kell semmi más mint egy böngésző a következő url-t: http://localhost:8080/webclientadmin Itt tudunk felvinni újjabb fatípusokat a kiválasztott erdőhöz. Ezenkívül hozzáadhatunk rövid megjegyzéseket. 9.3. Adat megjelenítés Itt láthatjuk a felrögzített fatípusokat, megjegyzésekkel együtt a következő url címen: http://localhost:8080/webclientviewer 9.4. Elérhetőség Minden forrás és dokumentáció elérhető a következő code.google.com oldalon: http://code.google.com/p/progelmelet2/ Letölthető és felhasználható. 15

10. fejezet Függelék JEE http://java.sun.com/javaee/technologies/javaee5.jsp JMS http://java.sun.com/products/jms/ JBoss http://www.jboss.org/jbossas Postgresql http://www.postgresql.org/ Richfaces http://www.jboss.org/richfaces Exadel Fiji http://www.exadel.com/web/portal/fiji 16