Servlet Java

  • Upload
    rdondon

  • View
    254

  • Download
    0

Embed Size (px)

Citation preview

  • 7/29/2019 Servlet Java

    1/32

    Java Tutorial 1Construirea unei aplicaii Java Mobile

    [Type the abstract of the document here. The abstract istypically a short summary of the contents of the document.Type the abstract of the document here. The abstract istypically a short summary of the contents of the document.]

    Team

    10/4/2009

  • 7/29/2019 Servlet Java

    2/32

    2

    ContentsAplicaie Mobile conectat la un Servlet....................................................................................................... 3

    Software necesar ...................................................................................................................................... 3

    Java Platform, Enterprise Edition .......................................................................................................... 3

    NetBeans IDE ......................................................................................................................................... 4

    Construcie Servlet.................................................................................................................................... 9

    Pasul 1. Crearea proiectului Java care va conine Servlet-ul ................................................................ 9

    Pasul 2. Adaugm un Servlet la aplicaia Web nou creat.................................................................. 13

    Pasul 3. Adugm la Servlet codul necesar pentru a numra cererile primite.................................. 16

    Pasul 4: Compilarea............................................................................................................................. 17

    Pasul 5. Testarea Servlet-ului .............................................................................................................. 18

    Construcie Aplicaie Mobile .................................................................................................................. 20Pasul 1. Crearea proiectului Java care va conine aplicaia Java Mobile ............................................ 20

    Pasul 2. Testarea aplicaiei Java Mobile generate n mod automat ................................................... 22

    Pasul 3. Extinderea aplicaiei Java Mobile pentru a ne conecta la Servlet.......................................... 24

    Pasul 4. Testarea aplicaiei Mobile...................................................................................................... 30

  • 7/29/2019 Servlet Java

    3/32

    3

    Aplicaie Mobile conectat la un Servlet

    Software necesar

    Java Platform, Enterprise Edition

    Include Java Platform, Standard Edition i este o soluie clasic pentru implementarea de aplicaiiorientate pe servicii i aplicaii Web. Include server-ul de aplicaie Sun GlassFish care furnizeaz suport

    pentru utilizarea Servlet-urilor.

    Java Platform, EE se poate descrca de la adresa:

    http://java.sun.com/javaee/

    http://java.sun.com/javaee/downloads/index.jsp?userOsIndex=6&userOsId=windows&userOsName=Wi

    ndows

    Se va alege pachetul de aplicaii care include GlassFish/App Platform + JDK.

    n timpul instalrii se solicito parol pentru administratorul serverului de aplicaii. Se pot modifica de

    asemenea i porturile folosite pentru accesarea serverului de aplicaii.

    Restul opiunilor prezentate n timpul instalrii vor fi lsate cu valorile lor implicite.

    La ncheierea instalrii se pornete serverul de aplicaii.

    http://java.sun.com/javaee/http://java.sun.com/javaee/http://java.sun.com/javaee/downloads/index.jsp?userOsIndex=6&userOsId=windows&userOsName=Windowshttp://java.sun.com/javaee/downloads/index.jsp?userOsIndex=6&userOsId=windows&userOsName=Windowshttp://java.sun.com/javaee/downloads/index.jsp?userOsIndex=6&userOsId=windows&userOsName=Windowshttp://java.sun.com/javaee/downloads/index.jsp?userOsIndex=6&userOsId=windows&userOsName=Windowshttp://java.sun.com/javaee/downloads/index.jsp?userOsIndex=6&userOsId=windows&userOsName=Windowshttp://java.sun.com/javaee/
  • 7/29/2019 Servlet Java

    4/32

    4

    NetBeans IDE

    Mediu de dezvoltare integrat Java. http://www.netbeans.org/

    Se poate descrca de la adresa: http://www.netbeans.org/downloads/index.html

    Se alege pachetul care suport numai Java SE (Standard Edition). Java Enterprise Edition i serverul de

    aplicaii GlassFish au fost deja instalate.

    n timpul instalrii trebuie efectuate urmtoarele operaii:

    1. Specificarea directorului n care se gsete instalat JDK (Java Development Kit). JDK a fostinstalat odata cu Java Platform EE i se gsete n directorul C:\Sun\SDK\jdk

    http://www.netbeans.org/http://www.netbeans.org/http://www.netbeans.org/downloads/index.htmlhttp://www.netbeans.org/downloads/index.htmlhttp://www.netbeans.org/downloads/index.htmlhttp://www.netbeans.org/
  • 7/29/2019 Servlet Java

    5/32

    5

    Dup instalare se descarc plug-in-urile care vor fi folosite pentru dezvoltarea aplicaiilor mobile:

    1. Selectm din meniul Toolsopiunea Plugins.

    2. Selectm din lista de plugin-uri disponibile pe cele referitoare la Mobility i Wireless Toolkit2.5.2. Selectm de asemenea plugin-urile referitoare la limbajul UML.n final apsm butonul

    Install.

    3. Urmtorul ecran prezint lista plugin-urilor care vor fi instalate.

  • 7/29/2019 Servlet Java

    6/32

    6

    Verific n grupul server-elor din fereastra Services dac server-ul GlassFish este adugat la NetBeans

    IDE.

    Dac server-ul GlassFish nu apare n cadrul grupului, l adugm utiliznd opiunea Add Server... din

    cadrul meniului contextual (activat de butonul dreapta al mouse-ului).

  • 7/29/2019 Servlet Java

    7/32

    7

    Selectm tipul de server pe care dorim s l adugm: GlassFish v2.x.

    Specificm directorul n care se afl instalat server-ul GlassFish: C:\Sun\SDK. GlassFish a fost instalat la

    momentul instalrii Java Platform Enterprise Edition.

  • 7/29/2019 Servlet Java

    8/32

    8

    Introducem parola stabilit pentru server-ul de aplicaii GlassFish la momentul instalrii Java Platform

    Enterprise Edition.

  • 7/29/2019 Servlet Java

    9/32

    9

    Construcie Servlet

    Servlet-ul ateapt cereri primite utiliznd protocolul HTTP i la fiecare cerere va returna numrul de ori

    de care a fost apelat. Valoarea returnat va fi formatat simplu sub forma unui text.

    Pasul 1. Crearea proiectului Java care va conine Servlet-ul

    n NetBeans IDE selectm din meniul File, opiunea New Project. Tipul de proiect selectat este aplicaieWeb deoarece Servlet-urile sunt de obicei programe care se activeaz la cereri venite prin intermediul

    protocolului HTTP.

  • 7/29/2019 Servlet Java

    10/32

    10

    Alegem numele aplicaiei: OurServlet. Acest nume va fi folosit ulterior pentru a accesa aplicaia utiliznd

    Internet-ul.

  • 7/29/2019 Servlet Java

    11/32

    11

    Alegem serverul de aplicaie care ne va oferi suportul pentru a executa programe de tip Servlet. Folosim

    server-ul GlassFish de la Sun. O alternativ este serverul de aplicaie Java Tomcat.

  • 7/29/2019 Servlet Java

    12/32

    12

    Nu folosim un Framework pentru dezvoltare deoarece proiectul este foarte simplu. ncheiem etapele

    primare de definire a proiectului selectnd Finish.

  • 7/29/2019 Servlet Java

    13/32

    13

    Pasul 2. Adaugm un Servlet la aplicaia Web nou creat

    Selectm n fereastra Project Explorer aplicaia OurServlet i din meniul contextual (meniu plasat pe

    butonul dreapta al mouse-ului) alegem opiunea NewServlet.

  • 7/29/2019 Servlet Java

    14/32

    14

    Alegem pentru clasa Servlet numele Count deoarece va numra cererile primite i plasm aceast clas

    ntr-un pachet de clase numit CountPack.

  • 7/29/2019 Servlet Java

    15/32

    15

    Selectm Finish pentru a ncheia adugarea Servlet-ului la aplicaia Web. Servlet-ul va fi accesat n

    cadrul aplicaiei Web cu ajutorul numelui Count.

  • 7/29/2019 Servlet Java

    16/32

    16

    Pasul 3. Adugm la Servlet codul necesar pentru a numra cererile primite.

    Declarm n clasa Count o dat membru _count utilizat pentru a contoriza numrul de apeluri.

    MetodaprocessRequesteste apelat la fiecare cerere primit de ctre Servlet. n cadrul ei vom

    incrementa data membru _count i vom transmite valoarea ei ctre client sub forma unui text.

  • 7/29/2019 Servlet Java

    17/32

    17

    Pasul 4: Compilarea

    Compilm ntreaga aplicaie selectnd din meniul Runopiunea Clean and Build Main Project.

  • 7/29/2019 Servlet Java

    18/32

    18

    Pasul 5. Testarea Servlet-ului

    Transferm aplicaia OurServlet n cadrul serverului de aplicaie GlassFish si pornim serverul de aplicaie.

    Aceste operaii se realizeaz utiliznd opiunea Run Main Project din meniul Run.

    n urma execuie acestei aciuni, intr-un browser Web va fi ncrcat pagina principal a aplicaiei

    OurServlet, n cazul nostru o pagin JSP creat n mod implicit de mediul NetBeans IDE, pagin careafieaz mesajul Hello world!

  • 7/29/2019 Servlet Java

    19/32

    19

    Pentru a apela Servlet-ul, in browser-ul Internet Explorer solicitm accesarea adresei:

    http://localhost:8080/OurServlet/Count. Componentele adresei sunt prezentate n continuare:

    localhost Reprezint calculatorul curentpe care se afla aplicaia Web. Se poate nlocui cuadresa 127.0.0.1. n cazul n care aplicaia este pus pe Internet se nlocuiete cuadresa calculatorului pe care este plasat.

    8080 Reprezint portul utilizat de serverul de aplicaie GlassFish pentru a interaciona cuexteriorul.

    OurServlet Este numele aplicaiei Web.Count Este numele Servlet-ului din aplicaia Web. O aplicaie Web poate conine mai multe

    elemente de tip Servlet, pagini JSP, etc.

    n browser ne apare valoarea contorului din Servletn care se memoreaz numrul de apelri. La fiecare

    rencrcare a paginii aceast valoare crete.

    http://localhost:8080/OurServlet/Counthttp://localhost:8080/OurServlet/Counthttp://localhost:8080/OurServlet/Count
  • 7/29/2019 Servlet Java

    20/32

    20

    Construcie Aplicaie Mobile

    Aplicaia Java se va executa n cadrul unui dispozitiv Mobile (telefon mobil) i se va conecta prin

    intermediul Internet-ului la Servlet, prelund de la acesta numrul de apelri. Numrul de apeluri va fi

    afiat pe ecranul dispozitivului Mobile.

    Pasul 1. Crearea proiectului Java care va conine aplicaia Java MobileDin meniul Fileselectm opiunea New Project. Tipul de proiect ales este Java Mobile din categoria Java

    Micro Edition (ME).

    Stabilim numele aplicaiei OurMobile i solicitm construirea unui MIDlet (aplicaie Java pentru un

    telefon mobil sau alt dispozitiv embedded) implicit Hello World.

  • 7/29/2019 Servlet Java

    21/32

    21

    Selectm emulatorul utilizat pentru testare i tipul de platform pentru care va fi construit aplicaia.

    Connected Limited Device Configuration (CLDC) este o specificaie pentru un cadru de dezvoltare a

    aplicaiilor Java ME pentru dispozitive cu resurse foarte limitate (minimum procesor 16 biti si 192 Kbytes

    memorie) cum ar fi telefoanele mobile i pager-ele. Mobile Information Device Profile (MIDP) este o

    specificaie Java pentru dispozitive embedded (telefoanele mobile si PDA-uri). MIDP folosete serviciile

    furnizate de CLDC.

    Selectm Finish pentru a completa generarea proiectului Mobile iniial.

    Aplicaia Mobile generat este format dintr-un MIDlet care conine o form ce specific elementele

    care vor aprea pe ecran. Iniial forma conine numai un buton Exit care determin ncheierea aplicaiei.

  • 7/29/2019 Servlet Java

    22/32

    22

    Diagrama de flux arat modul n care interacioneaz obiectul MIDlet reprezentnd aplicaia Mobile cu

    forma inclus care definete coninutul ecranului.

    Urmtorul fragment de cod surs arat cum clasa HelloMIDlet este derivat din clasa MIDlet i include o

    form care va reprezenta coninutul ecranului.

    Pasul 2. Testarea aplicaiei Java Mobile generate n mod automatExecutm aplicaia generat utiliznd opiunea Run Main Project din meniul Run. Pe ecran ne apare

    emulatorul pentru dispozitive embedded mobile.

  • 7/29/2019 Servlet Java

    23/32

    23

    Utilizm opiunea Launch pentru a lansa n execuie aplicaia Mobile nou creat. n simulator ne apare

    ecranul aplicaiei care conine un mesaj Hello, world!i butonul Exit.

  • 7/29/2019 Servlet Java

    24/32

    24

    Pasul 3. Extinderea aplicaiei Java Mobile pentru a ne conecta la Servlet

    Pn la momentul curent ntregul cod al aplicaiei Mobile a fost generat n mod automat de mediul de

    dezvoltare NetBeans. Vom aduga la interfa un nou buton, Connect. Utilizarea acestui buton va

    determina conectarea la Servlet, preluarea de la acesta a mesajului cu numrul de apelri ale servlet -

    ului i afiarea mesajului pe ecranul dispozitivului mobil. Deoarece conectarea la servlet prin intermediul

    Internet-ului poate dura cateva secunde i nu dorim ca interfaa aplicaiei s ingheen aceasta perioadateptnd rspunsul de la servlet, vom folosi pentru conectare un thread de execuie separat.

    Noul cod va fi adugat n urmtoarele etape.

    1. Adugm un buton nou la form utiliznd meniul contextual. Tipul butonului va fi ScreenCommand.

    2. Utilizm opiunea Rename din meniul contextual pentru a schimba numele noii comenzi dinscreenCommand n connectComand.

  • 7/29/2019 Servlet Java

    25/32

    25

    n acest moment, diagrama de flux a aplicaiei arat dup cum urmeaz:

    3. Stabilim eticheta (textul afiat pe ecran) Connect pentru comanda connectCommand utilizndfereastra Properties asociat comenzii.

  • 7/29/2019 Servlet Java

    26/32

    26

    n acest moment, dac testm aplicaia n emulator, ecranului ei va arta ca mai jos:

    4. Adugm la aplicaie codul care va fi executat n momentul utilizrii butonului Connect. Vomncepe prin a defini n cadrul clasei HelloMIDlet o metod connectcare se va conecta la Servlet.

    Pentru aceasta vom anuna n cadrul aplicaiei c folosim pachetele de clase specifice pentru

    operaii de IO (Input/Output).

  • 7/29/2019 Servlet Java

    27/32

    27

    Codul surs al metodei connect, care va fi prezentat n continuare, este inserat n cadrul

    fiierului Java la sfritul definiiei clasei HelloMIDlet.

    Metoda connect trebuie executat pe un thread de execuie separat de thread -ul principal al

    aplicaiei. Ca urmare, vom defini n cadrul clasei HelloMIDlet,la sfrit,o subclas derivat din

    clasa Thread. n metoda run a acestei subclase vom apela metoda connect.

  • 7/29/2019 Servlet Java

    28/32

    28

    n acest moment putem asocia butonul Connect la codul care trebuie executat n momentul

    utilizrii lui. Acest lucru se realizeaz prin modificarea metodei commandAction care aratmodul n care reacioneaz MIDlet-ul la utilizarea unui buton (la recepionarea unei comenzi).

    Codul iniial al acestei metode este prezentat n continuare.

  • 7/29/2019 Servlet Java

    29/32

    29

    Modificm aceast metod pentru a afia pe ecran o form cu un mesaj de ateptare dup care

    lansm n execuie un nou thread pentru conectarea la servlet.

    5. Compilm aplicaia utiliznd opiunea Clean and Build Main Project din meniul Run.

  • 7/29/2019 Servlet Java

    30/32

    30

    Pasul 4. Testarea aplicaiei Mobile

    n aceast etap ne vom asigura c aplicaia modificat se conecteaz corect la servlet i este capabil s

    preia si s afieze numrul de apeluri ale servlet-ului.n acest scop vom efectua urmtoarele operaii.

    1. Lansm n execuie aplicaia Web care include Servlet-ul. Selectm aplicaia OurServlet ialegem opiunea Run din meniul contextual.

    2. Lansm n execuie aplicaia Mobile procednd la fel ca mai sus. Ecranul principal al aplicaieieste:

  • 7/29/2019 Servlet Java

    31/32

    31

    La fiecare utilizare a butonului Connect, aplicaia Mobile se contecteaz la Servlet i afieaz de

    cte ori a fost apelat acesta din urm. nainte de prima conectare, utilizatorului dispozitivului

    embedded i se cere permisiunea de a utiliza Airtime (permisiunea de a se conecta la Internet).

    Odat permisiunea obinut, ecranul aplicaiei se transform n:

  • 7/29/2019 Servlet Java

    32/32

    Utilizri succesive ale butonului Connect vor determina creterea numrului de apeluri

    contorizate n Servlet.