Dezvoltarea Aplicaţiilor Internet Laborator 9 – 2010 1 Servicii Web de tip REST Un serviciu REST (Representational State Transfer) foloseşte un model arhitectural care specifică o serie de constrângeri (ca de exemplu interfaţa uniformă), care aplicate unui serviciu web induc o serie de proprietăţi utile (performanţă, scalabilitate). În contextul REST datele şi funcţionalităţile sunt considerate resurse, accesibile prin URI (Uniform Resource Identifiers) în stilul web. Asupra resurselor se acţionează prin intermediul unui set de operaţii simple, bine definite. Modelul arhitectural REST se bazează pe paradigma client-server şi foloseşte un protocol de comunicaţie fără stare (stateless), de obicei HTTP. Clienţii şi serverele schimbă reprezentări ale resurselor folosind interfeţe şi protocoale standardizate. În felul acesta aplicaţiile REST snut simple şi performante. Serviciile web RESTful de obicei asociază cele 4 metode HTTP uzuale cu operaţiile pe care le realizează: create, retrieve, update, and delete. Sunt permise următoarele adnotări: @Path: URI relativ, indică localizarea clasei Java (URI la care e accesibilă resursa). @GET: specifică faptul că o anumită metodă va trata cereri HTTP de tip GET. @POST: specifică faptul că o anumită metodă va trata cereri HTTP de tip POST @PUT: specifică faptul că o anumită metodă va trata cereri HTTP de tip PUT. @DELETE: specifică faptul că o anumită metodă va trata cereri HTTP de tip @DELETE. @HEAD: specifică faptul că o anumită metodă va trata cereri HTTP de tip HEAD. @PathParam: specifică un parametru extras din URI. @QueryParam: specifică un parametru extras din query parameters din URI. @Consumes: precizează tipul MIME al reprezentării ce poate fi consumată de o resursă (acceptată de la client); poate apărea la nivel de clasă sau de metodă. @Produces: precizează tipul MIME al reprezentării ce va fi produs de resursă şi trimis către client; poate apărea la nivel de clasă sau de metodă. @Provider: permite alte asocieri între cererea sau răspunsul HTTP şi JAX-RS. 1. Servicii Web REST realizate cu Apache CXF 1.1. Operaţii pregătitoare Se descarcă arhiva apache-cxf-2.3.0.zip de la adresa http://cxf.apache.org/ şi se desface (de exemplu) în directorul “c:\DAI\apache-cxf-2.3.0\”, care va fi setat apoi ca valoare a variabilei de mediu CXF_HOME. Alternativ se poate descărca şi o versiune anterioară a CXF. Se descarcă kitul aplicaţiei soapUI-x32-3_6_1.exe de la adresa http://www.soapui.org/ şi se lansează în execuţie, pentru a instala utilitarul SoapUI. În mod implicit instalarea se face în directorul “C:\Program Files\eviware”. Se poate descarca si documentatia SoapUI aferenta, disponibila la adresa http://sourceforge.net/projects/soapui/files/soapui/ în arhiva (cea mai recentă) soapui-docs-3.5.1.zip. Se descarcă arhiva apache-ant-1.8.1-bin.zip de la adresa http://ant.apache.org/ . Se poate folosi şi o versiune anterioară. Se expandează aceasta arhivă într-un director, de exemplu în “c:\DAI\apache-ant- 1.8.1\”, care va fi setat apoi ca valoare a variabilei de mediu ANT_HOME.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Dezvoltarea Aplicaţiilor Internet Laborator 9 – 2010
1
Servicii Web de tip REST
Un serviciu REST (Representational State Transfer) foloseşte un model arhitectural care specifică o
serie de constrângeri (ca de exemplu interfaţa uniformă), care aplicate unui serviciu web induc o serie
de proprietăţi utile (performanţă, scalabilitate). În contextul REST datele şi funcţionalităţile sunt
considerate resurse, accesibile prin URI (Uniform Resource Identifiers) în stilul web. Asupra
resurselor se acţionează prin intermediul unui set de operaţii simple, bine definite. Modelul arhitectural
REST se bazează pe paradigma client-server şi foloseşte un protocol de comunicaţie fără stare
(stateless), de obicei HTTP. Clienţii şi serverele schimbă reprezentări ale resurselor folosind interfeţe
şi protocoale standardizate. În felul acesta aplicaţiile REST snut simple şi performante. Serviciile web
RESTful de obicei asociază cele 4 metode HTTP uzuale cu operaţiile pe care le realizează: create,
retrieve, update, and delete.
Sunt permise următoarele adnotări:
@Path: URI relativ, indică localizarea clasei Java (URI la care e accesibilă resursa).
@GET: specifică faptul că o anumită metodă va trata cereri HTTP de tip GET.
@POST: specifică faptul că o anumită metodă va trata cereri HTTP de tip POST
@PUT: specifică faptul că o anumită metodă va trata cereri HTTP de tip PUT.
@DELETE: specifică faptul că o anumită metodă va trata cereri HTTP de tip @DELETE.
@HEAD: specifică faptul că o anumită metodă va trata cereri HTTP de tip HEAD.
@PathParam: specifică un parametru extras din URI.
@QueryParam: specifică un parametru extras din query parameters din URI.
@Consumes: precizează tipul MIME al reprezentării ce poate fi consumată de o resursă (acceptată de la
client); poate apărea la nivel de clasă sau de metodă.
@Produces: precizează tipul MIME al reprezentării ce va fi produs de resursă şi trimis către client;
poate apărea la nivel de clasă sau de metodă.
@Provider: permite alte asocieri între cererea sau răspunsul HTTP şi JAX-RS.
1. Servicii Web REST realizate cu Apache CXF
1.1. Operaţii pregătitoare
Se descarcă arhiva apache-cxf-2.3.0.zip de la adresa http://cxf.apache.org/ şi se desface (de exemplu) în
directorul “c:\DAI\apache-cxf-2.3.0\”, care va fi setat apoi ca valoare a variabilei de mediu
CXF_HOME. Alternativ se poate descărca şi o versiune anterioară a CXF.
Se descarcă kitul aplicaţiei soapUI-x32-3_6_1.exe de la adresa http://www.soapui.org/ şi se lansează în
execuţie, pentru a instala utilitarul SoapUI. În mod implicit instalarea se face în directorul “C:\Program
Files\eviware”.
Se poate descarca si documentatia SoapUI aferenta, disponibila la adresa
http://sourceforge.net/projects/soapui/files/soapui/ în arhiva (cea mai recentă) soapui-docs-3.5.1.zip.
Se descarcă arhiva apache-ant-1.8.1-bin.zip de la adresa http://ant.apache.org/. Se poate folosi şi o
versiune anterioară. Se expandează aceasta arhivă într-un director, de exemplu în “c:\DAI\apache-ant-
1.8.1\”, care va fi setat apoi ca valoare a variabilei de mediu ANT_HOME.