Documente Academic
Documente Profesional
Documente Cultură
Facilitati JDeveloper
Oracle JDeveloper 10g ofera un mediu de dezvoltare integrat, avand facilitati de
modelare, programare, testare, optimizare si utilizare, care acopera intregul ciclu de viata a unei
aplicatii J2EE (figura 14)
In aceasta versiune a JDeveloper, un aspect important este evidentiat prin dezvoltarea
vizuala si declarativa in combinatie cu Application Developement Framework (ADF). Impreuna,
acestea ofera atat dezvoltatorilor Java experimentati, cat si celor incepatori, modalitati diverse de
a realiza aplicatii integrate.
Oracle JDeveloper 10g ofera instrumente de baze de date integrate, acceptand standarde
de comunicatie Java DataBase Connectivity (JDBC), dar si Open DataBase Connectivity
(ODBC). Nu exista nici un fel de restrictii in manipularea bazelor de date. Astfel, se pot
crea/actualiza scheme, tabele, viziuni, declansatori (triggers), sinonime, secvente, pachete, functii
sau clase Java. Se pot utiliza, de asemenea, instrumente de tip wizard pentru crearea, stergerea
sau modificarea obiectelor bazei de date.
Componente JSF:
4.Arhitectura JSF
JSF este un User Interface framework orientat pe partea de server. In cazul in care un client face
o cerere, cererea ajunge prin intermediul retelei la server, unde framework-ul JSF construieste o
reprezentare UI si o afiseaza clientului in mark-up language-ul corespunzator clientului. Userul
interactioneaza cu pagina web si submite o cerere de procesare serverului. Framework-ul JSF
interpreteaza parametrii cererii, in decodeaza si ii converteste la evenimente apoi le propaga catre
logica de tratare a evenimentelor.
JSF este unul din framework-urile care se bazeaza pe structura Model-View-Controller(MVC).
Ca orice alt framework bazat pe MVC, arhitectura JSF are propriul Front controller, numit
FacesServlet.
Model-ul este responsabil cu reprezentarea datelor si a actiunilor ce opereaza asupra datelor de
la nivelul Web al aplicatie. folosit pentru a controla informatiile si a notifica observatorii cand
aceastea se modifica. Pe langa controlarea informatiilor si notificarea observatorilor cand starea
acestora se modifica, modelul mai este folosit ca o abstractizare a proceselor sau sistemelor din
lumea reala. El surprinde nu numai starea unui proces sau a unui sistem, ci si cum acesta
functioneaza.
View-ul este reponsabil cu prezentarea rezultatelor catre utilizator. View-ul are o relatie
de corespondenta de 1 la 1 cu suprafata de afisare si stie cum sa afiseze continutul catre
utilizator. In plus, cand modelul se modifica, view-ul automat redeseneaza partea afectata pentru
a reflecta modificarile aparute. Componenta View este creata uzual folosind: pagini JSP, taguri
proprii, taguri definite de utilizator, JSTL, sabloane Velocity, Transformari XSLT.
Controler-ul reprezinta componenta prin care userul interactioneaza cu aplicatia.
Controller-ul primeste informatii de la user si instruieste model-ul si view-ul sa execute actiuni
bazate pe input-ul primit. In principiu, controller-ul este responsabil cu maparea actiunilor
efectuate de user la raspunsul care trebuie oferit de aplicatie. De exemplu, data userul selecteaza
un meniu item, controlerul trebuie sa determine cum ar trebui aplicatia sa raspunda acestei
actiuni.
Diagrama Model-View-Controller
5. JSF. Arhitectura componentelor UI. 5 tipuri.
Arhitectura componentelor UI cuprinde cinci tipuri de modele:
Modelul claselor UI
Modelul de prezentare
Modelul de conversie
Modelul de validare
Modelul claselor UI
Modelul de prezentare:
Modelul de conversie:
Componentele UI pot avea asociate date, memorate la nivelul serverului intr-un bean
Modelul Event-Listener
Nume de fisiere confuse paginile folosite in JSF se termina in .jsp, dar url-urile
folosite se termina in .faces sau .jsf, acestea pot cauza confuzii
Postback action - fiecare buton sau link activat va avea ca efect o actiune de postback.
Destul de problematic este exemplul in cazul in care sunt folosite ferestre modale si o
actiune de postback ca avea ca effect inchiderea respetivei ferestre.
Componentele de tip dataTable solicita aceleasi date din bean la restore view
phase.Daca datele din bean sunt obtinute din baza de date, aceasta va avea impact
asupra performatei.
JSP-urile sunt mai usor de creat si pot avea functionalitatea a aproape oricarui
servlet.Servleturile sunt utilizate pentru a extinde functionalitatea serverului Web(servicii de
autentificare,validarea bazelor de date)si pentru comunicarea cu appleturi sau alte aplicatii Web.
9. Tehnic de programare AJAX. Prezentare
Ajax (sau AJAX), prescurtare pentru Asynchronous JavaScript and XML, este o tehnic de
programare pentru crearea de aplicaii web interactive. Intenia este s fac paginile web s
devin mai rapide i deci mai acceptate, prin schimbul n fundal al unor cantiti mici de date cu
serverul, astfel nct s nu fie nevoie ca pagina s fie rencrcat la fiecare ac iune a
utilizatorului. Aceasta are ca scop creterea interactivitii, vitezei i uurinei n utilizare a
aplicaiilor web.
Ajax nu este o tehnologie n sine. Termenul este folosit pentru definirea aplicaiilor web ce
folosesc un ansamblu de tehnologii:
viata egala cu durata sesiunii cu clientul, pe cnd entity beans pot dura ani de zile, durata lor
de viata fiind egala cu cea a datelor pe care le reprezinta din baza de date.
O alta diferenta majora ntre entity beans si session beans este ca entity beans pot fi utilizate
de mai multi clienti n mod simultan. Cu alte cuvinte, mai multi clienti pot manipula datele
din baza de date simultan.
13. EJB. Componenta sesiune (session bean);
Session beans sunt componente care au durata de viata egala cu cea a sesiunii cu clientul
care o utilizeaza. De exemplu, daca un client contacteaza un session bean pentru a realiza
functia de bussiness de introducere a unei noi comenzi, serverul EJB este responsabil de
crearea unei instante a acelei componente session bean. Atunci cnd clientul se va deconecta,
serverul EJB va distruge acea instanta asession bean - ului. Session beans sunt utilizabile de
catre un singur client la un moment dat, cu alte cuvinte session beans nu sunt partajate de mai
multi clienti.
La rndul lor, session beans sunt de doua tipuri: statefull session beans si stateless session
beans.
Un statefull session bean este proiectat sa deserveasca procese de business care se ntind pe
mai multe apeluri de metode sau chiar tranzactii. Pentru a realiza aceasta, statefull session
beans vor mentine starea de partea clientului. Daca starea unui statefull session beanse
modifica n timpul apelului unei metode, aceeasi stare va fi disponibila clientului la
urmatorul apel de metoda.
Un exemplu de statefull session bean este cazul unui magazin pe Web. Pe masura ce clientul
se "plimba" prin magazin, va adauga produse n cosul de produse, va scoate unele si va pune
altele etc. Acesta este un exemplu de proces de business care se ntinde pe durata mai multor
apeluri de metode. Componenta cos de produse trebuie sa si pastreze ultima stare de la un
apel de metoda la altul, de aceea ea va fi modelata ca session bean.
Unele procese de business, n mod natural, pot fi modelate dupa paradigma unei
singure cereri. n cadrul unui asemenea proces, nu este nevoie ca sa se pastraze starea de la
un apel de metoda la altul. Aceste procese sunt modelate cu stateless session beans. Acestea
sunt furnizori anonimi de metode, deoarece nu cunosc istoria clientului.
Un exemplu de stateless session bean este cel al unei componente care realizeaza operatii
matematice complexe asupra intrarii, ca de exemplu compresia datelor audio sau video.
Clientul poate furniza datelele necomprimate ntr-un buffer, mpreuna cu factorul de
compresie dorit. Componenta va realiza compresia si va returna tot un buffer, dar cu datele
comprimate. Dupa aceasta, componenta poate deservi si orice alt client, deoarece nu are
nevoie sa retina nici un fel de date referitoare la clientul pe care tocmai l-a deservit, cu alte
cuvinte nu are nevoie sa retina informatii legate de starea clientului.
14. EJB.Componenta bazata pe mesaj (message-dreaven bean).
Componenta bazata pe mesaj este utilizata pentru gestionarea asincrona a mesajelor JMS
(Java Message Service).
Stratul middleware orientat pe mesaj a fost proiectat pentru a decupla aplicatiile si
componentele si a le pune sa comunice intre ele prin schimb asincron de mesaje. Aceste mesaje
pot fi anunturi de evenimente, date de aplicatie, solicitari de servicii sau chiar obiecte. Orice tip
de informatie care trebuie comunicata de la o aplicatie la alta se realizeaza prin transmiterea unui
mesaj catre sistemul destinatar.
Desi in general, mesajele pot fi trimise in ambele directii, aplicatia sau componenta care
trimite sau primeste un mesaj are un anumit nume. Componenta care creeaza sau produce un
mesaj este denumita producator. Aplicatia sau componenta care primeste un mesaj este numita
consumator. Se poate ca o aplicatie sa fie atat producator cat si consumator de mesaje, dar, pentru
un transfer de informatie dat, o parte trebuie sa produca mesajul si cealalta parte trebuie sa-l
consume. In esenta, componentele bazate pe mesaj executa anumiti algoritmi de lucru efectiv
folosind mesaje JMS (Java Message Servicie) trimise la o anumita destinatie JMS.
Spre deosebire de celelalte tipuri de componente, componentele bazate pe mesaj nu au o
interfata de baza sau de componenta. Prin urmare componentele bazate pe mesaj sunt complet
ascunse de client. Singura cale prin care clientii pot sa comunice cu o componenta bazata pe
mesaj este trimiterea mesajelor la o destinatie JMS.
Similar componentelor sesiune fara stare, nici componentele bazate pe mesaj nu i se
permite sa contina o stare de conversatie.
De la crearea componentei bazate pe mesaj si pana la distrugerea ei, de gestionarea
acesteia se ocupa in mod exclusiv containerul.
Containerul interactioneaza cu o componenta bazata pe mesaj prin intermediul unui set de
metode de apelare inversa, implementate chiar in componenta.
Componentele bazate pe mesaj sunt create de obicei la prima pornire a containerului.
Descriptorul de integrare specific producatorului ii ofera responsabilului cu integrarea
componentei ocazia de a preciza cate componente initiale bazate pe mesaj sunt disponibile la
pornire si, de asemenea, care este numarul maxim de componente care ar trebui create.
Deoarece nu exista interfata de baza sau de componenta, celelalte componente enterprise
bean nu pot comunica direct cu componentele bazate pe mesaj. Singura posibilitate de
comunicare este prin intermediul destinatiei JMS, via container.
15.Oracle Fusion Aplication
Oracle Fusion Applications (OFA) is a suite of enterprise resource planning software
applications from Oracle Corporation. It is distributed across various product families;
including financial
management, human
capital
management, customer
relationship
management, supply chain management, procurement, governance, and project portfolio
management.
Oracle Fusion Applications were announced shortly after Oracle's US$18 billion acquisition
spree of PeopleSoft, JD Edwards, and Siebel Systems in 2005.[1][2]
Oracle Fusion Applications were envisioned and pitched as an enterprise resource planning suite
- a combination of features and functionalities taken from Oracle E-Business Suite, JD Edwards,
PeopleSoft and Siebel product lines.[3][4] The suite is built on top of the Oracle Fusion
Middleware technology stack; both layers implement the Oracle Fusion Architecture, which
leverages the capabilities of service-oriented architecture.[5][6]
It was launched in September 2010 and released one year later at OpenWorld 2011.[3][4]
16.Prezentare SOA
SOA (Service Oriented Architecture - Arhitectur software bazat pe servicii) este un tip de
arhitectur software care presupune distribuirea funcionalitii aplicaiei n uniti mai mici,
distincte - numite servicii - care pot fi distribuite ntr-o reea i pot fi utilizate mpreun pentru a
crea aplicaii destinate afacerilor. Capacitatea mare cu care pot fi reutilizate aceste servicii n
aplicaii diferite este o caracteristic a arhitecturilor software bazate pe servicii. Aceste servicii
comunic ntre ele trimind informaii de la un serviciu la altul. SOA este deseori vzut ca o
evoluie a programrii distribuite si a programrii modulare.
SOA este o arhitectur flexibil i standardizat ce contribuie la o mai bun conectare a
diverselor aplicaiilor i faciliteaz schimbul de informaii ntre acestea. SOA unific procesele
de business structurnd marile aplicaii ntr-o colecie de module mai mici numite servicii.
Aceste aplicaii pot fi folosite de diverse grupuri de oameni att din cadrul companiei ct i din
afara ei.
Serviciile sunt uniti funcionale neasociate care nu au apeluri unele ctre altele nglobate n ele.
n mod tipic sunt implementate funcionaliti pe care majoritatea oamenilor le-ar recunoa te ca
si serviciu cum ar fi de exemplu completarea unei aplicaii online pentru un cont, vizualizarea
unui formular de banc sau a unui extras de cont online sau efectuarea unei comenzi de bilet de
avion online.
Serviciile nu au n codul propriu implementat modul n care acestea s comunice ntre ele,
protocoalele sunt cele n cadrul crora este implementat acest lucru.
17. Prezentare WEB Logic Server Oracle.
Oracle WebLogic Server is a Java EE application server currently developed by Oracle
Corporation. Oracle acquired WebLogic Server when it purchased BEA Systems in 2008.
Oracle WebLogic Server forms part of Oracle Fusion Middleware portfolio and
supports Oracle, DB2, Microsoft SQL Server, MySQL Enterprise and other JDBC-compliant
databases. Oracle WebLogic Platform also includes:
WebLogic Integration
WebLogic Workshop, an Eclipse IDE for Java, SOA and Rich Internet Applications
WebLogic Server includes .NET interoperability and supports the following native integration
capabilities:
CORBA connectivity
COM+ Connectivity
WebLogic/Tuxedo Connector
Oracle WebLogic Server Process Edition also includes Business Process Management and Data
Mapping functionality. WebLogic supports security policies managed by security administrators.
The Oracle WebLogic Server Security Model includes:
complete scope of security coverage for all Java EE and non-Java EE components
Components[edit]
As of 2010, Oracle Corporation regards the following products as "core components" of Oracle
WebLogic Server:[16]
JRockit
Oracle Coherence, in-memory caching of frequently used data across multiple servers[17]
Oracle TopLink
Tuxedo
18. Prezentare RIA
RIA sunt aplicatii web care au multe caracteristici ale aplicatiilor desktop, ce sunt
transmise fie direct din site prin intermediul browser-ului, fie prin intermediul unui plug-in, fie
independent prin masini virtuale sau sandbox-uri. Flash, Java si Silevrlight sunt in prezent
primele 3 platforme folosite pentru realizarea de astfel de aplicatii(95% Flash, 80% Java si 45%
Silverlight).
Inaintea utilizarii unei astfel de aplicatii utilizatorii, de obicei, trebuie sa instaleze un
software framework pe sistemul de operare, care download-eaza, updat-aeaza, verifica si executa
RIA. Spre deosebire Ajax utilizeaza o tehnologie prin care totul este implementat direct in
browser.
RIA este cel mai folosit in domeniul jocurilor online si a aplicatiilor ce necesita acces la
captura video. Prin introducerea de noi standarde (HTML5) si a compatibilitatii browserelor
web, a fost diminuata nevoia de folosire de plug-in-uri pentru aplicatiile RIA.
In functie de ce anume se doreste in cadrul unei pagini web, tehnologiile folosite pentru
dezvoltarea de RIA pot fi impartite dupa cateva criterii. Astfel pentru animatii complexe se
foloseste Flash, pentru putere industriala se foloseste Java, iar pentru interfete de utilizator
accesibile se foloseste Java Script sau Ajax.
19. Prezentare Java Persistent API (JPA)
JPA ( Java Persistence API ) este un API pus la dispozitie de limbajul Java, care le
permite developerilor sa acceseze si sa managerieze baze de date relationale, in aplicatiile scrise
de acestia, utilizand una din platformele : Java 2 Platform, Standard Edition ; Java 2 Platform,
Enterprise Edition. [3]
Exista trei mari concepte, cand vorbim despre JPA, si anume : API-ul specific ( definit in
pachetul javax.persistence ), JPQL ( Java Persistence Query Language ) si medatata obiect / data
relationala. [3]
O entitate de persistenta este o clasa Java care se mapeaza pe un tabel din baza de date
relationala. Instantele entitatilor corespund liniilor individuale dintr-un anumit tabel. Entitatile
pot avea relatii cu alte entitati, iar relatiile dintre ele sunt ilustrate prin metadata obiect / data
relationala. Metadata poate fi specificata intr-un fisier XML separat, sau direct in fisierul sursa
Java, utilizand adnotari. [3]
JPQL este un limbaj utilizat pentru a efectua interogari si modificari pe entitatile de
persistenta care se mapeaza pe tabelele din baza de date relationala. JPQL opereaza pe instante
ale entitatilor si nu pe tabelele definite in baza de date relationala. [3]
20.Prezentare Apache Tomcat
Tomcat 5.5 Servlet/JSP Container este un server Web dedicat aplicaiilor Servlet si JSP, creat pe
platform J2SE 5.0 i distribuit de Apache Software Foundation sub licen "free software"
Apache License 2.0 . Tomcat 5.5, care implementeaz specificaiile Java EE Servlet 2.4 i
JavaServer Pages 2.0 din cadrul Java Community Process i ofer n plus fa de acestea i
cteva alte funcionalitai, se constituie ntr-o platform pentru dezvoltarea i ntrebuinarea de
aplicaii
i
servicii
Web.
In cazul aplicaiilor Servlet, serverul Tomcat preia toate cereile HTTP (ascult portul 8080) i le
distribuie obiectelor/claselor Java responsabile cu soluionarea lor. Repartizarea cererilor ctre
aplicaii, se face interpretnd URL-ul la care face referire cererea. Pentru lansarea aplicaiei, este
necesar ncrcarea i instanierea clasei Java Servlet corespunztoare. Cele dou cerine sunt
ndeplinite de Tomcat astfel:
clase ClassLoader (care implementeaz interfaa java.lang.ClassLoader) pentru
ncrcarea n maina Java a claselor Servlet ce sunt declarate corect n cadrul fi ierelor de
configurare a serverului i care se afla n containerul corespunztor, vor fi create de ctre
server n momentul lansrii lui n execuie
instanierea clasei Servlet responsabil cu soluionarea cererilor pentru un anumit URL,
este fcut de catre server n momentul primirii unei prime astfel de cereri. Mai exact,
atunci cnd serverul primete o cerere, obiectul Servlet ctre care va fi direcionat
cererea fie exist deja, fie va fi creat; nstanierea are loc pentru prima cerere cu URL-ul
n cauz, toate celelalte vor gsi obiectul deja creat.
n continuare, serverul Tomcat trimite cererea aplicaiei Servlet, care va prelucra informa iile
primite i va genera un rspuns HTTP. Rspunsul este cedat tot serverului Tomcat, acesta
trimind-ul respectivului client.