procesarea datelor - laborator 10 tehnologii de acces la ... ii/pd/laborator/lab_10_pd.pdf ·...

30
Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA DATE. TEHNOLOGIA JDBC. EXEMPLU DE ELABORARE A APLICATIILOR WEB CU BAZE DE DATE Pentru a elabora, testa si depune in mediul real de functionare a astfel de aplicatie sunt necesare urmatoarele: - o baza de date relationala - un server de aplicatii Web standardizat - un mediu de programare flexibil, usor de folosit. În cadrul acestui laborator se urmăresc obiectivele: - instalarea si configurarea instrumentelor de lucru - realizarea de conectori intre baza de date si serverul de aplicatii Web, respectiv intre baza de date si mediul de dezvoltare - elaborarea unei interfete grafice client care sa afiseze date din baza de date Toate instrumentele folosite in cadrul acestui laborator sunt open source. Instrumentele open source pot fi obtinute gratuit, iar in cadrul acestui laborator veti invata cum se configureaza si se integreaza pentru a atinge obiectivele propuse mai sus. Pentru unele dintre instrumente se va oferi locatia de unde se pot procura, precum si modalitatile de instalare si configurare. VEDERE GENERALA ASUPRA ELABORARII DE APLICATII WEB ECLIPSE IDE SERVER DE APLICATII BAZA DE DATE Dezvoltare si testare BAZA DE DATE SERVER DE APLICATII Acces la date folosind C/C++, Python, Ruby etc. Utilizatori Web Acces JDBC Depunere in mediul real de functionare Aplicatii Web, servicii Web, pagini JSP, servlets, componente EJB La elaborarea aplicatiilor Web trebuie avute in vedere doua etape: 1. scrierea aplicatiei, testarea si depanarea acesteia, folosind mediul Eclipse 2. depunerea aplicatiei in mediul real de functionare folosind serverul de aplicatii si baza de date Pentru prima etapa, se va folosi mediul ECLIPSE impreuna cu baza de date, iar pentru cea de-a doua se va folosi serverul de aplicatii si baza de date.

Upload: tranngoc

Post on 01-Dec-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

TEHNOLOGII DE ACCES LA DATE. TEHNOLOGIA JDBC. EXEMPLU DE ELABORARE A APLICATIILOR WEB CU BAZE DE DATE

Pentru a elabora, testa si depune in mediul real de functionare a astfel de aplicatie sunt necesare urmatoarele:

- o baza de date relationala - un server de aplicatii Web standardizat - un mediu de programare flexibil, usor de folosit.

În cadrul acestui laborator se urmăresc obiectivele: - instalarea si configurarea instrumentelor de lucru - realizarea de conectori intre baza de date si serverul de aplicatii Web, respectiv intre baza de

date si mediul de dezvoltare - elaborarea unei interfete grafice client care sa afiseze date din baza de date

Toate instrumentele folosite in cadrul acestui laborator sunt open source. Instrumentele open source pot fi obtinute gratuit, iar in cadrul acestui laborator veti invata cum se configureaza si se integreaza pentru a atinge obiectivele propuse mai sus. Pentru unele dintre instrumente se

va oferi locatia de unde se pot procura, precum si modalitatile de instalare si configurare.

VEDERE GENERALA ASUPRA ELABORARII DE APLICATII WEB

ECLIPSE IDE

SERVER DE

APLICATII

BAZA DE DATE

Dezvoltare si testare

BAZA DE DATESERVER

DE APLICATII

Acces la date folosind C/C++, Python, Ruby etc.

Utilizatori WebAccesJDBC

Depunere in mediul real de functionare

Aplicatii Web, servicii Web, pagini JSP, servlets, componente EJB

La elaborarea aplicatiilor Web trebuie avute in vedere doua etape:

1. scrierea aplicatiei, testarea si depanarea acesteia, folosind mediul Eclipse 2. depunerea aplicatiei in mediul real de functionare folosind serverul de aplicatii si baza de date

Pentru prima etapa, se va folosi mediul ECLIPSE impreuna cu baza de date, iar pentru cea de-a doua se va folosi serverul de aplicatii si baza de date.

Page 2: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

In cadrul acestui laborator vom incepe mai intai cu realizarea conexiunii dintre baza de date si serverul de aplicatii si apoi vom realiza conexiunea dintre baza de date si mediul Eclipse. In prima etapa trebuie realizata integrarea dintre baza de date si Eclipse, pentru a obtine accesul la obiectele bazei de date (tabele, campuri etc.) si la datele existente. Accesul la baza de date se poate face si prin intermediul altor tehnologii, cum ar fi de exemplu, C/C++, Python, Ruby, Perl si multe altele. In cea de-a doua etapa, in care se realizeaza depunerea aplicatiei in mediul real de functionare, aceasta trebuie sa ruleze in cadrul serverului de aplicatii. Serverul de aplicatii poate gazdui aplicatii alcatuite din componente Web, cum ar fi JavaServer Pages (JSP), servlets, si componente Enterprise JavaBeans (EJB). Utilizatorii pot accesa aplicatia prin intermediul unui browser. De obicei, serverele de baze de date suporta si accesul la date prin intermediul unei conexiuni JDBC (driver JDBC de tip 4). Driverul lucreaza foarte bine cu aplicatiile scrise in limbaj Java, fiind necesar accesul la un sistem relational de gestiune a bazelor de date. Serverul de aplicatii are incorporat suport pentru conectorul Java EE Connector Architecture (JCA) 1.5, care face posibila folosirea driverului JDBC corespunzator fiecarui tip de sistem de gestiune al bazelor de date.

INSTALAREA MATERIALELOR SOFTWARE NECESARE Informaţii cu caracter general pe care trebuie să le aveţi în vedere la parcurgerea laboratorului:

a. Toate aplicaţiile software folosite în cadrul acestui laborator trebuie să fie instalate în cadrul unei maşini virtuale, pe care o aveţi la dispoziţie pe calculatorul personal.

b. Toate instalarile se vor efectua în cadrul maşinii virtuale pe care o veţi configura în cadrul laboratorului.

c. Citiţi cu atenţie toate informaţiile prezentate în cadrul acestui laborator, deoarece acestea vă ajută să configuraţi corect mediile de care aveţi nevoie. De asemenea, în cadrul laboratorului veţi gasi o serie de informaţii care vă ajută la efectuarea oricarei aplicatii de acest tip.

In cadrul acestui laborator se vor folosi produse si versiuni care au fost verificate ca pot lucra impreuna. Puteti folosi oricare alte versiuni, dar trebuie sa va asigurati ca acestea sunt compatibile intre ele (nu orice combinatie de produse si versiuni va conduce la succes!)

Se vor folosi: • Un server de baze de date: DB2, versiunea 9.5 • Un server de aplicatii: WebSphere Application Server Community Edition, versiunea 3.0 • Un mediu de programare: Eclipse, versiunea 3.3 impreuna cu adaptorul WTP V3.0 pentru

serverul de aplicatii. La inceperea instalarii ar trebui ca directorul C:\Download sa arate ce in figura de mai jos:

1. Instalarea mediului Java Instrumentele folosite în acest laborator se pot folosi numai dacă pe calculator este instalată o versiune de Java. Pentru acest laborator se va folosi versiunea Java SE JDK 6.0 care se gaseste la adresa:

Page 3: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6-oth-JPR Pentru descarcarea unei versiuni de Java trebuie sa aveti (sau sa va creati) un cont la ORACLE, care a preluat de la compania Sun intretinerea Java. Kitul de instalare Java a fost

descarcat si se afla in directorul C:\Download al masinii virtuale. Pentru instalarea mediului Java se va folosi fisierul jdk-6-windows-i586.exe aflat in directorul C:\Download al masinii virtuale. Se accepta termenii de licentiere si se pastreaza locatia propusa pentru instalare. Se accepta instalarea J2SE Runtime Environment si se apasa butonul Next.

După instalarea J2SE SDK trebuie efectuate următoarele operaţii:

Crearea unei variabile de mediu numită "JAVA_HOME" şi introducerea în cadrul acesteia a unei valori corespunzătoare directorului în care se află J2SE SDK. Pentru aceasta se vor parcurge paşii:

a. Se apasă butonul din dreapta al mouse-ului atunci când acesta se află deasupra pictogramei "My Computer" şi se alege din meniul derulant comanda "Properties" si se apasa Start -> Settings -> Control Panel -> System.

Page 4: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

b. Se deschide cutia de dialog “System Properties” şi se alege fila “Advanced”. c. Se apasă butonul "Environment Variables"

d. În casetele User sau System Variables se introduce textul JAVA_HOME. Variabila

JAVA_HOME va păstra calea către directorul în care este instalată versiunea de Java (C:\Program Files\Java\jdk1.6.0\).

e. Se adaugă calea completă către subdirectorul bin al directorului în care este instalată versiunea de Java.

f. Se selectează variabila Path din secţiunea System variables a casetei Environment variables şi se apasă butonul Edit.

g. Apare caseta Edit system variable în care se alege caseta text Variable value şi se merge la sfârşitul şirului existent unde se introduce caracterul “;”

Page 5: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

h. Se introduce şirul de caractere: %JAVA_HOME%\bin

i. Se apasă butonul OK şi se ajunge în caseta Environment variables unde se apasă din nou

butonul OK. j. Se ajunge în caseta System Properties şi se apasă din nou butonul OK.

2. Crearea bazei de date in DB2 In continuare se va crea baza de date Situatie in DB2. In acest scop se va deschide interfata utilizator Control Center din DB2, folosind Start -> Programs -> IBM DB2 -> DB2COPY1 -> General Administration Tools -> Control Center.

Se deschide o interfata utilizator ce permite lucrul cu baze de date si cu obiectele acestora. Daca se expandeaza folderul All Databases, se poate vedea baza de date implicita a sistemului DB2 care se creeaza in mod automat la instalarea sistemului. Pentru crearea unei baze de date noi se apasa butonul din dreapta al mouse-ului, dupa care se alege comanda Create Database -> Standard…, asa cum se poate vedea in figura urmatoare:

Page 6: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Porneste un program ajutator care cere introducerea unei serii de informatii necesare pentru configurarea dupa dorinta a bazei de date. In primul ecran apare cerinta introducerii unui nume. Acesta este Situatie. Se lasa toate celelalte casete nemodificate si se apasa butonul Next. In ecr4anul urmator se cere locatia in care se vor pastra datele. Se lasa totul asa cum este si se apasa Next. In ecranul urmator apar cerintele legate de tipul de caractere ce pot fi introduse. Din nou se lasa totul asa cum este si se apasa Next. Pe ultimul ecran apare un sumar al configurarii. Se poate apasa butonul Show Command pentru a vedea sintaxa comenzii in limbaj SQL, dupa care se apasa butonul Finish:

Page 7: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Se asteapta finalizarea creearii bazei de date (poate dura destul de mult!), iar la final apare un ecran de confirmare a reusitei (sau esecului):

Pentru a continua sa se lucreze cu baza de date Situatie trebuie sa se apese butonul Connect care se afla in fereastra Show Object Details Pane. Daca aceasta nu se vede se deschide din View -> Show Object Details Pane.

Page 8: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Vom folosi in continuare editorul Command Editor pentru a scrie comenzi in sintaza SQL, asemanator cu cea ce s-a efectuat in SQL Server:

Prima comanda este aceea de conectare la baza de date Situatie, ceea ce se face folosind sintaxa:

connect to situatie

Se va crea tabelul Student la fel ca si in SQL Server, folosind sintaxa din figura de mai jos:

Page 9: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Pentru executarea comenzii, fie se apasa butonul de pe bara, fie se apasa combinatia de taste “CTRL+Enter”. In mod asemanator se va crea tabelul Note.

Page 10: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Pentru a vizualiza ceea ce s-a obtinut se executa comenzile:

Page 11: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Se vor introduce date in tabelul Student:

Page 12: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Datele introduse se pot vizualiza prin comanda:

select * from student

Se introduc apoi datele in tabelul Note:

Page 13: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

In continuare vom folosi un editor in linie de comanda pentru a vizualiza datele din tabelul Note. Pentru aceasta, vom deschide editorul folosind Start -> Programs -> IBM DB2 > DB2COPY1(Default) > Command Line Tools > Command Line Processor. Dupa aparitia editorului, se da comanda de conectare la baza de date:

connect to situatie

Datele introduse se pot vizualiza prin comanda: select * from note

Rrezultatele se pot vedea in figura de mai jos:

Page 14: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

3. Instalarea mediului Eclipse

Mediul Eclipse, dezvoltat de o comunitate open source, este o platforma universala ce permite elaborarea, testarea si depunerea cu usurinta si rapida a produselor software in mediul real de functionare. Platforma Eclipse este un instrument multi-dimensional ce pote fi folosit de catre programatori in diverse feluri, oferind: - interfata intuitiva si usor de folosit; - foarte multe plugin-uri ce permit adaptarea la orice tip de aplicatie; - un mediu optimizat pentru programarea in limbajul Java; Proiectul Eclipse Web Tools Platform ofera instrumente pentru elaborarea de aplicatii Web. In directorul C:\Download al masinii virtuale se gaseste fisierul eclipse-jee-juno-SR1-win32.zip descarcat de la adresa: http://mirrors.ibiblio.org/eclipse/technology/epp/downloads/release/juno/SR1/ Acest fisier ZIP contine plugin-uri de la diverse alte proiecte, cum ar fi WST, JST (pentru JSF) si Dali JPT, precum si un set de instrumente software pentru pornirea imediata a WTP. Pentru instalare se dezarhiveaza fisierul eclipse-jee-juno-SR1-win32.zip direct in radacina masinii virtuale (in C:\). Se creeaza directorul C:\eclipse in cadrul caruia se afla fisierul eclipse.exe. Se creeaza o pictograma pe desktop pentru a porni mai usor Eclipse. Pentru aceasta se apasa butonul din dreapta al mouse-ului atunci cand acesta se afla intr-o zona libera de pe desktop si se alege din meniul derulant New -> Shortcut. In continuare se va porni mediul Eclipse prin apasarea de doua ori a butonului din stanga al mouse-ului atunci cand acesta se pozitioneaza pe pictograma eclipse de pe desktop. Apare o cutie de dialog care cere numele directorului in care se vor depune proiectele ce se vor elabora. Se va introduce calea C:\workspace.

Page 15: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

ATENTIE! Se lasa deselectata optiunea Use this as the default and do not ask again. La pornirea mediului Eclipse va apare vederea de bun venit care se inchide.

Dupa instalare se cere repornirea mediului Eclipse. Se accepta solicitarea, dupa care totul va fi pregatit pentru lucru. In etapa urmatoare se va realiza o conexiune la o baza de date de pe DB2. In acest scop se va reporni Eclipse in directorul C:\workspace, dupa care se va alege din meniul Eclipse Window > Show View > Data Source Explorer.

1. Se apasa butonul din dreapta al mouse-ului atunci cand acesta este pozitionat pe elementul Database Connections, dupa care se alege New...

2. In programul ajutator New Connection Profile wizard, se alege DB2 for Linux, UNIX, and Windows, dupa care se apasa butonul Next.

3. In fereastra New Connection Profile se apasa butonul New Driver Definition si se apasa butonul Next.

4. In fereastra New Driver Definition se alege driverul IBM Data Server Driver for JDBC din lista Database care se expandeaza. Se poate vedea un mesaj de eroare prin care suntem informati de faptul ca nu se pot gasi fisierele JAR, motiv pentru care se va apasa pe fila JAR List.

Page 16: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

5. Se apasa butonul Clear All. Se cauta fisierele db2jcc.jar si db2cc_license_cu.jar in calea de

instalare a DB2 prin apasarea butonului Add Jar/Zip (C:\Program Files\IBM\SQLLIB\java\db2jcc.jar, respectiv C:\Program Files\IBM\SQLLIB\java\db2jcc_license_cu.jar).

6. In caseta New Connection Profile se introduce numele bazei de date SITUATIE, numele

serverului: localhost, portul: 50000 si contul de utilizator: Password: db2admin, respectiv User ID: db2admin, dupa care se apasa butonul Test connection. Ar trebui sa apara un mesaj de succes.

Page 17: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

7. Se apasa butonul Finish.

In vederea Data Source Explorer din Eclipse se vede noua conexiune la baza de date care se expandeaza pentru avedea tabelele create anterior. Se observa faptul ca tabelele din baza de date SITUATIE se afla in schema DB2ADMIN, motiv pentru care in momentul scrierii oricarei interogari trebuie specificat acest lucru. De exemplu pentru a afisa datele din tabelul Employee, interogarea trebuie scrisa sub forma:

SELECT * FROM DB2admin.Student

Page 18: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Pentru a vizualiza continutul unui tabel, se apasa cu butonul din dreapta al mouse-ului atunci cand acesta se afla pozitionat deasupra tabelului si se alege din lista derulanta Data > Sample Contents. Rezultatele sunt afisate intr-o vedere noua care se numeste SQL Results. Se trece in aceasta vedere. Pe fila Status se poate vedea interogarea SQL:

Pe fila Result1 se poate observa rezultatul interogarii (datele din baza de date). Folosind Eclipse se pot chiar modifica date din tabelele bazei de date, dupa cum se prezinta in continuare. 1. Se apasa butonul din dreapta al mouse-ului atunci cand acesta se afla pozitionat deasupra

tabelului si se alege din lista derulanta Data > Edit. 2. Se deschide automat o vedere cu numele tabelului care prezinta datele acestuia ce pot fi

modificate in mod direct. 4. Instalarea serverului de aplicatii Serverul de aplicatii folosit in cadrul acestui laborator este WebSphere Application Server Community Edition (WASCE), versiunea 3.0 fiind dezvoltat de o comunitate open source. Acest server de aplicatii foloseste un container de compoente Web foarte popular, cunoscut sub denumirea de Apache Tomcat care ofera un pachet de aplicatii ce ajuta la executarea aplicatiilor Web, dar care necesita un timp indelungat de integrare si configurare si, in plus, acestea s-ar putea sa nu lucreze bine unele cu altele. Spre deosebire de Apache Tomcat, WASCE are toate componentele necesare preintegrate, fiind nevoie de mult mai putin timp pentru configurarea mediului de dezvoltare Web, dar si pentru depanarea, reutilizarea si reintegrarea aplicatiilor. De fapt, WASCE are integrat un server de aplicatii open source foate puternic destinat lucrului colaborativ, cunoscut sub denumirea de Apache Geronimo. WASCE este un server de aplicatii gratuit ce poate fi folosit fara a se percepe taxe pentru dezvoltare, testare sau productie. Versiunea folosita in acest laborator este 3.0 si are suport pentru versiunile de Java EE 5, 6 si 7 oferind sprijin pentru diverse tehnici de programare, cum ar fi Ajax sau Web 2.0. Kitul de instalare se

Page 19: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

gaseste in directorul C:\Download al masinii virtuale, sub denumirea de WASCE 3_0. Din aceasta locatie se foloseste pentru instalare fisierul wasce_setup-3.0.0.3-win.exe. In prezent, ultima versiune de WASCE este 3.0 si poate fi descarcata de la adresa: http://www.ibm.com/developerworks/downloads/ws/wasce/. Pentru a instala serverul de aplicatii se executa fisierul wasce_setup-3.0.0.3-win.exe. Apare un program ajutator pentru instalare care solicita aceptarea termenilor de licentiere. Se raspunde afirmativ, dupa care se pasa butonul Next. Se accepta locatia implicita a serverului de aplicatii. Se poate introduce o locatie proprie, dar se recomanda folosirea celei implicite aratata de program. Este posibil ca, la pornire, sa apara un mesaj prin care sa vi se ceara specificarea locatiei Java. Aceasta se afla in directorul in care este instalata versiunea de Java. In ecranul urmator se poate introduce un plugin in Eclipse pentru lucrul cu WASCE. Se accepta optiunea de instalare a plugin-ului in Eclipse si se introduce calea catre directorul in care se afla Eclipse (C:\eclipse\).

Se apasa Install. Apasati OK.

Daca acest plugin a fost instalat anterior in Eclipse, sunteti informati de acest lucru.

Page 20: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Se apasa butonul OK si se revine la ecranul anterior in care se alege optiunea No, thanks. Apasati Install pentru a incepe instalarea serverului de aplicatii. La incheierea cu succes a instalarii, lasati selectata optiunea Launch first step page after installation si apasati butonul Done.

Dupa instalare se porneste serverul alegand optiunea Start the server din ecranul First steps. Trebuie sa asteptati un timp (aprox. 2 minute) pana porneste serverul si apare ecranul din figura de mai jos:

Acum puteti alege optiunea Administrative console din ecranul First steps. Alternativ, puteti deschide un browser si sa introduceti adresa: http://localhost:8080/console

Page 21: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Va apare ecranul de mai jos in care alegeti optiunea Continue:to this website. Va apare pagina de intrare in consola administrativa. Consola administrativa este de fapt o aplicatie Web ce ruleaza in cadrul serverului de aplicatii. Introduceti contul de utilizator: Username: system Password: manager Pentru a opri serverul de aplicatii. Se poate folosi una dintre urmatoarele metode:

- din consola administrativa se alege comanda Log out (link-ul din dreapata sus) - Start-> Programs -> IBM WebSphere -> Application Server Community Edition -> Stop

the server. - Se trece in directorul bin al serverului de aplicatii (sau se adauga calea in variabila de mediu

PATH) dupa care se scrie comanda: shutdown din linia de comanda. Serverul de aplicatii cere contul de utilizator (system – manager). Instalarea unei aplicatii pe serverul de aplicatii este cunoscuta sub denumirea de depunerea aplicatiilor in mediul real de functionare. Aplicatiile instalate pe serverul de aplicatii sunt intretinute de catre server sub forma unor module. Pentru a putea vedea modulele instalate pe serverul de aplicatii, dupa primirea accesului la consola administrativa se pot alege optiunile Application EARs, Web App WARs, EJB JARs, or Application Clients, sau se poate da, in linie de comanda, atunci cand va aflati in directorul bin al serverului de aplicatii, comanda: deploy list-modules. Serverul de aplicatii cere contul de utilizator la care se raspunde cu system, respectiv manager. Este afisata lista aplicatiilor instalate, oferindu-se informatii despre acestea, ca in figura de mai jos. In aceasta figura se pot observa module care au semnul (+) in fata, ceea ce inseamna faptul ca acestea sunt instalate si in functiune. Modulele care nu au semnul (+) in fata sunt instalate, dar nu se afla in executie in acel moment.

Page 22: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

In continuare se va realiza conectarea serverului de aplicatii la DB2, ceea ce va permite oricarei aplicatii instalate in serverul de aplicatii sa acceseze baza de date cu tabelele specificate. Pentru a se putea realiza aceasta conexiune, trebuie creata si instalata o instanta a adaptorului JCA 1.5 pe serverul de aplicatii pentru a putea accesa baza de date. Aceasta instanta foloseste driverul JDBC de tip 4 pentru a accesa baza de date. Actiunea ce trebuie efectuata va produce urmatoarele:

1. Adaugarea fisierelor JAR ale driver-ului JDBC aflate in directorul de instalare a DB2 in cadrul serverului de aplicatii.

2. Crearea unui grup de resurse pentru baza de date folosind adaptorul configurat prin intermediul driverului JDBC.

3. Crearea unui plan de instalare pentru a instala adaptorul. In consola administrativa se alege optiunea Advanced din meniul Navigator din stanga sus:

Pentru a vedea toate intrarile in depozitul in care serverul de aplicatii pastreaza componentele, asa cum se vede in figura urmatoare si pentru a introduce altele noi se trece in meniul Resources din care se alege Repository. Se pot vedea fisierele JAR de care avem nevoie pentru driverul JDBC, acestea fiind deja preinstalate in WASCE 3.0.

ATENTIE! Daca folosit alte versiuni de DB2 care nu apar in lista, sau alte servere de baze de date va trebui sa descarcati driverele JDBC corespunzatoare (de obicei acestea pot fi procurate de

la producatori – de exemplu pentru SQL Server, de la Microsoft) si sa le incarcati in serverul de aplicatii folosind sectiunea Add Archive to Repository. In acest scop se va introduce in caseta File, cu ajutorul butonului Browse, calea catre aceste fisiere. In caseta Group se va introduce un sir de caractere asemanator cu cel din lista fisierelor JAR pentru DB2, dar adaptate producatorului (de exemplu, pentru SQL Server va trebui sa introduceti ceva de genul: com.microsoft.jdbc.sqlserver.SQLServerDriver. Apoi se va apasa butonul Install, iar fisierul (fisierele) jar vor apare in lista Current Repository Entries.

Page 23: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Adaptorul de resurse JCA ofera acces la resursele bazelor de date pentru toate aplicatiile instalate in serverul de aplicatii. Pentru a face acest lucru, se alege optiunea Datasources din meniul din stanga al consolei administrative, subordonat optiunii Resources.

In figura de mai sus, de exemplu, grupul de resurse numit SystemDatasource foloseste pentru a obtine accesul la o baza de date Derby care este folosita intern de catre serverul de aplicatii. Dintre

Page 24: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

optiunile afisate se alege Using the WebSphere CE database pool wizard, si se completeaza cu valorile:

1. Numele resursei: Situatie 2. Tipul bazei de date: DB2 XA 3. Driver JAR: se aleg, tinand apasata tasta CTRL, ambele fisiere:

com.ibm.db2/db2jcc/9.5/jar, respectiv com.ibm.db2/db2jcc_license_cu/9.5/jar 4. DB User Name: db2admin 5. DB Password: db2admin 6. Port: 50000 7. Database: situatie 8. Host: localhost

Toate celelalte campuri ale formularului se lasa necompletate. Se apasa butonul Deploy si apare ecranul de mai jos in care se vede ca a fost adaugat grupul de resurse al bazei de date Situatie.

Se verifica functionalitatea conexiunii la baza de date SITUATIE prin selectarea Situatie din lista derulanta Use DataSource din sectiunea Run SQL. Apoi se introduce in edtorul text interogarea:

SELECT * FROM DB2admin.Student

Page 25: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

Se apasa butonul Run SQL si sub editorul text se pot vedea datele existente in tabelul Student din baza de date SITUATIE. 5. Crearea aplicatiei Web folosind Eclipse si WTP In continuare se va elabora o aplicatie Web care este alcatuita dintr-o singura pagina JSP care acceseaza datele din baza de date si le formateaza cu ajutorul unui fisier auxiliar de formatare. Aplicatia se va elabora in mediul Eclipse si se va instala pe serverul de aplicatii folosind un fisier Web standard de arhivare a aplicatiei, numit WAR. Aplicatia va accesa serverul DB2 prin intermediul grupului de resurse pentru baza de date creat anterior in WASCE.

ATENTIE! La instalarea WASCE 3.0 ati fost intrebat daca se instaleaza si pluginul WASCE pentru Eclipse. Ati raspuns afirmativ, deci nu mai este nevoie sa parcurgeti pasii pentru instalarea adaptorului WASCE 3.0.

Daca nu ati instalat pluginul WASCE la instalarea serverului de aplicatii, atunci se va proceda mai departe la instalarea adaptorului pentru serverul de aplicatii WTP ce permite gestionarea unei instante a serverului de aplicatii din cadrul mediului Eclipse. Cel mai usor mod de instalare a acestui adaptor este folosirea managerului de actualizare din Eclipse, ceea ce este descris in continuare:

1. Se alege din meniul Eclipse Help > Install New Software ... 2. In programul ajutator Install, se apasa butonul Add… din dreapta sus si se introduce

numele adaptorului serverului: WAS CE 3.0, iar la URL: http://download.boulder.ibm.com/ibmdl/pub/software/websphere/wasce/updates/

3. Se expandeaza WTP Server Adapters, avandu-se grija sa se selecteze doar versiunea WASCE v3.0, nu si versiunile 1.1, 2.0, sau 2.1 si se apasa Next.

4. Se accepta conditiile de licentiere si se apasa Next si apoi Finish. Vom incepe prin crearea unui proiect nou in Eclipse care este de tip Web:

1. Se inchide serverul de aplicatii WASCE. 2. Se deschide Eclipse si se alege din meniul principal File > New > Dynamic Web Project 3. Se introduce numele proiectului: dwapp 4. In sectiunea Target Runtime se apasa butonul New Runtime, se expandeaza IBM, se alege

IBM WASCE v3.0 si se apasa Next. Se introduce calea catre directorul unde este instalat WASCE, adica C:\Program Files\IBM\WebSphere\AppServerCommunityEdition.

Page 26: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

5. Se apasa Finish. Se asteapta pana ca se realizeaza reconfigurarea spatiului de lucru

C:\workspace. Aplicatiile Web sunt arhivate intr-un format standard, numit WAR inainte de a fi instalate pe serverul de aplicatii. Organizarea fisierelor War este impusa de standardul Java EE 6. Se genereaza in mod automat fisierele Java necesare, impreuna cu alte doua fisiere XML:

1. WEB-INF/web.xml – reprezinta descriptorul standard J2EE de punere in mediul real de functionare a aplicatiilor Web care trebuie sa apara in fiecare fisier WAR care se instaleaza.

2. WEB-INF/geronimo-web.xml – reprezinta planul de depunere in mediul real de functionare specific serverului de aplicatii care descrie configurarea serverului pentru aceasta aplicatie.

Page 27: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10

In continuare se va crea fisierul JSP care acceseaza datele din tabel..

1. Se apasa butonul din dreapta al mouse-ului atunci cand acesta se afla pozitionat deasupra directorului WebContent si se alege New > Other....

2. Se alege Web > JSP. 3. Se denumeste fisierul index.jsp. 4. Se apasa Finish.

Se genereaza scheletul paginii JSP cu ajutorul unui sablon predefinit. Se va modifica pagina corespunzator scriptului de mai jos: <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <link rel="stylesheet" type="text/css" href="dwstyles.css"/> <title>Tabelul Studenti</title> </head> <body> <h1>&nbsp;&nbsp;Lista studentilor</h1> <br> <table> <tr> <th>Nume</th> <th>Prenume</th> <th>Data inceput</th> <th>Situatie</th> <th>Inv</th> <th>Sex</th> </tr> <sql:query var="studenti" dataSource="jdbc/DataSource">

Page 28: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10 SELECT * FROM DB2ADMIN.STUDENT </sql:query> <c:forEach var="student" items="${studenti.rows}"> <tr> <td><c:out value="${student.Nume}"/></td> <td><c:out value="${student.Prenume}"/></td> <td><c:out value="${student.Data_inceput}"/></td> <td><c:out value="${student.Situatie}"/></td> <td><c:out value="${student.Inv}"/></td> <td><c:out value="${student.Sex}"/></td> </tr> </c:forEach> </table> </code> </body> </html> Fisierul JSP afiseaza datele din tabel. Fiecare rand din fisier reprezinta cate un rand din tabelul corespunzator al bazei de date. In acest fisier se utilizeaza etichetele standard din JSP Standard Tag Library (JSTL) si Expression Language (EL) nefiind introdus nici un fel de cod Java. Se poate folosi cod Java incorporat in paginile JSP, dar acest lucru nu este agreat. Liniile scrise cu caractere ingrosate prezinta modul in care eticheta <sql:query> acceseaza sursa de date JDBC numita jdbc/DataSource pentru a executa comanda SQL SELECT. Rezultatul interogarii se asociaza variabilei employees. Fiecare rand al acestui rezultat se afiseaza cu ajutorul etichetei <c:forEach> . Pagina index.jsp, in momentul in care se instaleaza pe serverul de aplicatii, trebuie sa rezolve sursa de date jdbc/DataSource, adica sa rezolve dwDatasource care a fost creata in serverul de aplicatii. Fisierul WAR contine referinte la resurse care se rezolva doar la instalarea aplicatiei. Acest lucru face ca acelasi modul sa fie instalat, fara a fi modificat, pe diverse servere de aplicatii si cu diverse baze de date. In fisierul web.xml se introduc liniile scrise cu caractere ingrosate de mai jos (se apasa pe fila Source): <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>dwapp</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <resource-ref> <res-ref-name>jdbc/DataSource</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> <res-sharing-scope>Shareable</res-sharing-scope>

Page 29: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10 </resource-ref> </web-app> Dupa modificare, fisierul se salveaza. Eticheta <resource-ref> ofera informatii despre container (Tomcat in acest caz) pentru referintele externe ce trebuie rezolvate. In fisierul geronimo-web.xml se va realiza conexiunea cu sursa de date din serverul de aplicatii, dwDatasource. Se adauga liniile scrise cu caractere ingrosate: <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.2" xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.2" xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1" xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2"> <sys:environment> <sys:moduleId> <sys:groupId>default</sys:groupId> <sys:artifactId>dwapp</sys:artifactId> <sys:version>1.0</sys:version> <sys:type>car</sys:type> </sys:moduleId> <sys:dependencies> <sys:dependency> <sys:groupId>console.dbpool</sys:groupId> <sys:artifactId>dwDatasource</sys:artifactId> </sys:dependency> </sys:dependencies> </sys:environment> <context-root>/dwapp</context-root> <resource-ref> <ref-name>jdbc/DataSource</ref-name> <resource-link>dwDatasource</resource-link> </resource-ref> </web-app> Prin adaugarea etichetei <sys:dependency> se realizeaza legatura cu console.dbpool/dwDatasource, obtinandu-se asigurarea ca adaptorul JCA 1.5 canfigurat anterior este disponibil pentru aplicatie. Daca nu se introduc etichetele <sys:version> si <sys:type> subordonate etichetei <sys:dependency>, serverul de aplicatii va trata situatia ca si cum ar trebui sa se adapteze la orice resursa disponibila, indiferent de versiune sau tip. Elementele <nam:resource-ref> precizeaza Tomcat faptul ca in serverul de aplicatii referinta jdbc/DataSource trebuie legata de grupul de resurse pentru baza de date dwDatasource. In continuare se va genera continutul dinamic prin executarea codului JSP pe serverul de aplicatii. se apasa butonul din dreapta al mouse-ului atunci cand acesta se afla pozitionat deasupra directorului WebContent si se alege New > Other..... Din meniul derulant se alege Web > CSS pentru a obtine un fisier de formatare a paginii care se va numi dwstyles.css, acceptandu-se sablonul implicit. Se modifica fisierul adaugandu-se codul urmator: h1 { font-family: arial; font-size: 38;

Page 30: Procesarea datelor - Laborator 10 TEHNOLOGII DE ACCES LA ... II/PD/Laborator/Lab_10_PD.pdf · Procesarea datelor - Laborator 10 In cadrul acestui laborator vom incepe mai intai cu

Procesarea datelor - Laborator 10 align: left; font-weight: bold; font-style: italic; color: green; } th { font-family: verdana, arial; font-size: 13; font-weight: bold; align: left; background-color: black; color: white; } td { font-family: verdana, arial; font-size: 12; font-style: italic; align: left; } table { border-style: solid; border-width: thin; } Se salveaza fisierul de formatare. La instalarea pe serverul de aplicatii, fisierul de formatare este accesat in mod direct, sub forma unui continut static. Browserul clientului va accesa acest fisier static de formatare pentru a modifica aspectul rezultatului obtinut din index.jsp. Daca prima pagina a proiectului Web este generata static si nu dinamic, se poate adauga doar o simpla pagina index.html directorului WebContent. In continuare se va instala aplicatia dwapp pe serverul de aplicatii. Se apasa butonul din dreapta al mouse-ului atunci cand acesta se afla pozitionat deasupra elementului dwapp in Eclipse si se alege Run as > Run on Server....Se deschide un program ajutator Run On Server in care se alege IBM WASCE v3.0 Server. Trebuie selectata caseta Always use this server when running this project. Se apasa Next si se alege versiunea de JRE care se foloseste. De asemenea, se introduce directorul in care s-a instalat serverul de aplicatii. Rezultatul va fi afisat intr-un browser intern. Pentru a verifica vizualizarea rezultatelor independent de mediul Eclipse, se va deschide un browser in care se va introduce adresa: http://localhost:8080/dwapp/