TEHNOLOGIJA WEB SERVISA

Similar documents
Web usluge. Web usluge

Port Community System

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

Podešavanje za eduroam ios

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu

SAS On Demand. Video: Upute za registraciju:

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

1. Instalacija programske podrške

PROJEKTNI PRORAČUN 1

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

Office 365, upute za korištenje elektroničke pošte

Upravljanje kvalitetom usluga. doc.dr.sc. Ines Dužević

BENCHMARKING HOSTELA

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020.

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ

Nejednakosti s faktorijelima

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

СТРУКТУРА СТАНДАРДА СИСТЕМАМЕНАЏМЕНТАКВАЛИТЕТОМ

Uvod u relacione baze podataka

Bušilice nove generacije. ImpactDrill

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze

Tutorijal za Štefice za upload slika na forum.

CRNA GORA

ANALIZA METODA DODJELE KAPACITETA U VIŠEUSLUŽNIM MREŽAMA I UTJECAJ NA KVALITETU USLUGE

Windows Easy Transfer

Osmišljavanje računalnog oblaka

WWF. Jahorina

INTEGRACIJA APLIKACIJA ZA OPERATORA DISTRIBUCIJSKOG SUSTAVA INTEGRATION OF APPLICATION FOR DISTRIBUTION SYSTEM OPERATOR

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine

ZAVOD ZA AUTOMATIKU I PROCESNO RAČUNARSTVO FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA SVEUČILIŠTE U ZAGREBU HTTP PROTOKOL OTVORENO RAČUNARSTVO

Otpremanje video snimka na YouTube

Informacijski sustav primarne zdravstvene zaštite Republike Hrvatske

Mindomo online aplikacija za izradu umnih mapa

STRUČNA PRAKSA B-PRO TEMA 13

Upute za korištenje makronaredbi gml2dwg i gml2dgn

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS

VIŠEKORISNIČKA IGRA POGAĐANJA ZA OPERACIJSKI SUSTAV ANDROID

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

3. Obavljanje ulazno-izlaznih operacija, prekidni rad

REALIZACIJA WEB APLIKACIJE ZA POSLOVANJE TURISTIČKE AGENCIJE

Raspodijeljeni sustav za pohranu i dohvat podataka

RANI BOOKING TURSKA LJETO 2017

UPUTSTVO. za ruter TP-LINK TD-854W/ TD-W8951NB

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION

WEB 2.0 TEHNOLOGIJA KAO ALAT PRI IZRADI SUSTAVA ZA UPRAVLJANJE UČENJEM (LMS)

OBAVJESTENJE 0 NABAVCI /18 KP "VODOVOD I KANALIZACIJA" A.O. BROD. Nikole Tesle Brod (sp bl) (053)

DZM Aplikacija za servise

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

SVEUČILIŠTE U ZAGREBU FAKULTET STROJARSTVA I BRODOGRADNJE DIPLOMSKI RAD. Mario Mandir. Zagreb, 2015 godina.

ALEN IVE SUSTAVI ZA UPRALJANJE SADRŽAJEM ZA UČENJE (LCMS) Diplomski rad

Rešavanje problema pomoću računara

En-route procedures VFR

EKSPLORATIVNA ANALIZA PODATAKA IZ SUSTAVA ZA ISPORUKU OGLASA

SVEUČILIŠTE JOSIPA JURJA STROSSMAYERA U OSIJEKU FAKULTET ELEKTROTEHNIKE, RAČUNARSTVA I INFORMACIJSKIH TEHNOLOGIJA. Stručni studij. IoT I PAMETNA KUĆA

KAKO GA TVORIMO? Tvorimo ga tako, da glagol postavimo v preteklik (past simple): 1. GLAGOL BITI - WAS / WERE TRDILNA OBLIKA:

UNIVERZITET SINGIDUNUM. Tema: ERP Enterprise Resource Planning Istorijat razvoja, polje primene i novi oblici poslovanja primenom cloud rešenja

Sveučilište Jurja Dobrile u Puli Fakultet ekonomije i turizma «Dr. Mijo Mirković» JOSIP ŠUGIĆ CMM METODA ZA OSIGURANJE KVALITETE SOFTVERA

SVEUČILIŠTE U ZAGREBU FAKULTET STROJARSTVA I BRODOGRADNJE

VELEUĈILIŠTE NIKOLA TESLA U GOSPIĆU MYSQL SUSTAV ZA UPRAVLJANJE BAZAMA PODATAKA OTVORENOG KODA

CRNA GORA / MONTENEGRO ZAVOD ZA STATISTIKU / STATISTICAL OFFICE S A O P Š T E NJ E / STATEMENT Broj / No 76 Podgorica, god.

DANI BRANIMIRA GUŠICA - novi prilozi poznavanju prirodoslovlja otoka Mljeta. Hotel ODISEJ, POMENA, otok Mljet, listopad 2010.

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. SEMINARSKI RAD U OKVIRU PREDMETA "Računalna forenzika" 2016/2017. GIF FORMAT (.

Sveučilište Jurja Dobrile u Puli. Fakultet ekonomije i turizma. Dr. Mijo Mirković. Igor Anušić MOBILNO OGLAŠAVANJE. Završni rad. Pula, 2017.

Upotreba selektora. June 04

Iskustva video konferencija u školskim projektima

1.UVOD. Ključne reči: upotrebljivost, praćenje, korisnički interfejs, aplikacija

WELLNESS & SPA YOUR SERENITY IS OUR PRIORITY. VAŠ MIR JE NAŠ PRIORITET!

Sveučilište Jurja Dobrile u Puli Fakultet ekonomije i turizma «Dr. Mijo Mirković» SARA IBRULJ CRM SUSTAV PODUZEĆA RUDAN D.O.O.

UNIVERZITET SINGIDUNUM

PSDN Public Switched Data Networks

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

ONLINE APLIKACIJA ZA SLANJE OBAVIJESTI U PREDDEFINIRANO VRIJEME

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti

Advertising on the Web

Aplikacija za dojavu događaja na uređajima s operacijskim sustavom Android

MEĐIMURSKO VELEUČILIŠTE U ČAKOVCU STRUČNI STUDIJ RAČUNARSTVA SMJER: MREŽNO INŽENJERSTVO MATKO MARTEK MREŽNA KONFIGURACIJA I PROTOKOLI ZA POVEZIVANJE

MRS MRSLab08 Metodologija Razvoja Softvera Vežba 08

SPECIJALISTIČKI RAD. Tema: TQM Potpuno upravljanje kvalitetom i uloga zaposlenih u postizanju potpunog kvaliteta. Br. ind.

SWIM Technical Infrastructure (ATC-ATC and EAD Profiles)

Slabosti protokola SSL/TLS na napad čovjekom u sredini

tehnologije i trendovi

TEHNO SISTEM d.o.o. PRODUCT CATALOGUE KATALOG PROIZVODA TOPLOSKUPLJAJUĆI KABLOVSKI PRIBOR HEAT-SHRINKABLE CABLE ACCESSORIES

Mogudnosti za prilagođavanje

Usporedba koncepata i metoda koje se koriste u područjima upravljanja informacijskim sustavima i upravljanja informacijskom sigurnošću seminarski rad

GIGABIT PASSIVE OPTICAL NETWORK

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a

Programiranje za Internet

Što su over-the-top usluge i kako utječu na komunikaciju?

ЗАВРШНИ (BACHELOR) РАД

Poslednjih godina Internet beleži i dramatičan

POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA

FAKULTET ZA POSLOVNU INFORMATIKU

Transcription:

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA Zavod za telekomunikacije Kolegij: Osnove upravljanja mrežom SEMINARSKI RAD TEHNOLOGIJA WEB SERVISA Vesna Jelčič Zagreb, siječanj 2007.

1.1. Usluge... 3 1.2 Web usluge... 4 2. TEHNOLOGIJA WEB USLUGA, STANDARDI, ARHITEKTURE...5 2.1 Web usluge i uslužno usmjerena arhitektura (Service Oriented Architecture- SOA)... 5 2.1.1. XML Web usluge... 5 2.1.2. Uslužno orijentirana arhitektura (SOA)... 6 2.1.3. Uloge Web usluga... 7 2.2. Web Services Description Language (WSDL)... 10 2.2.1 WSDL dokument... 10 2.3. Simple Object Access Protocol (SOAP)... 14 2.4. Universal Description, Discovery and Integration (UDDI)... 16 3. ZAKLJUČAK...16 4. LITERATURA...17 2

1. Uvod 1.1. Usluge Usluge su samoopisujuće otvorene komponente koje podržavaju brzu i jeftinu kompoziciju distribuiranih aplikacija. Ponuđene su od organizacija koje pružaju usluge. One osiguravaju implementaciju usluga, dobavljaju njihove opise i omogućuju slične tehničke i poslovne podrške. Kako usluge mogu biti ponuđene od raznih poduzetnika i komuniciraju putem Interneta, organizacije omogućuju distribuiranu infrastrukturu za internu i vanjsku aplikacijsku integraciju i suradnju. Opisi usluga služe za oglašavanje njihovih mogućnosti, sučelja i kvalitete. Objavljivanjem takvih informacija o raspoloživim uslugama pružaju se potrebna sredstva za otkrivanje, selekciju, povezivanje i kompoziciju usluga. Opis mogućnosti usluge definira konceptualnu svrhu i očekivane rezultate (koristeći izraze i pojmove koji su definirani u aplikacijskoj domeni). Opis sučelja usluge objavljuje potpis usluge (njegove ulaz/izlaz/greška parametre i tipove poruka). Očekivano ponašanje usluge tijekom izvršavanja specificirano je u opisu ponašanja. QoS definira važne funkcionalne i nefunkcionalne atribute kvalitete kao što su troškovi, performanse, sigurnosni atributi, integritet, pouzdanost, sposobnost rasta i dostupnost. Klijenti usluge (krajnje organizacije ili pojedinci koji koriste određenu uslugu) kao i organizacije koje integriraju više usluga u novu, jedinstvenu uslužnu ponudu, koriste opise usluga kako bi dosegli svoje ciljeve. 3

1.2 Web usluge Evolucijom informacijskih znanosti javila se potreba za kompleksnijom komunikacijom između klijenta i servera. Iz tog razloga nastaju Web usluge koje pružaju generičku, standardiziranu klijent-server paradigmu za pokretanje programa na serveru. Najrašireniji način korištenja Web usluga je jednostavno pozivanje metoda na udaljenim računalima. Registar Web usluga (servisni broker) (UDDI) Klijent pronalazi potrebnu Web uslugu 2 WSDL WSDL 1 Pružatelj Web usluga objavljuje Web uslugu Primatelj usluge 3 SOAP Pružatelj usluge Slika 1. Dohvat Web usluge Slika 1 prikazuje način rada Web usluga. Brojevi iznad ili pokraj strelica upućuju na redoslijed izvršavanja. Korakom broj jedan pružatelj usluge objavljuje opis usluge. U koraku broj 2 locira se određena usluga na Web-u. Korak broj tri obično se naziva spajanje sa uslugom, a omogućuje ga SOAP. WSDL- Web Services Description Language; opisuje sučelje (XML) usluge (opis usluge) UDDI- Universal Description, Discovery and Integration; protokol koji objavljuje opise Web usluga; standardni mehanizam za dinamičko otkrivanje opisa usluga SOAP- Simple Object Access Protocol; protokol za izmjenu XML poruka koristeći HTTP protokol 4

Veza između gore navedenih specifikacija prikazana je na slici 2. Slika 2. Veza tehnologija Web usluga 2. Tehnologija Web usluga, standardi, arhitekture 2.1 Web usluge i uslužno usmjerena arhitektura (Service Oriented Architecture- SOA) 2.1.1. XML Web usluge Najrašireniji i najuspješniji tip usluge je XML usluga. Na taj tip usluge postavljaju se dva temeljna zahtjeva: - komunikacija Internet protokolima (najčešće HTTP) - komunikacija putem XML dokumenata Standardna Web usluga trebala bi - omogućiti opis usluga koji barem sadrži WSDL dokument - biti sposobna prenijeti XML dokument koristeći SOAP (preko HTTP-a) Zajedničko svim Web uslugama je: - mogu se ponašati i kao primatelji i kao pružatelji usluga 5

- da budu registrirane kod agenta za otkrivanje preko kojeg mogu biti locirane Klijent koji pokreće zahtjev za Web uslugom je također Web usluga kao što je prikazano na sljedećoj slici (slika 3): Slika 3. Uloge Web usluga Svako sučelje izloženo preko klijentove usluge također je kvalificirano kao usluga (iz koje druge usluge mogu crpiti informacije). Samim time Web usluge se ne mogu smjestiti u standardni klijent-server model, već ostvaruju peer-to-peer sistem u kojem svaka usluga može igrati ulogu klijenta ili servera. 2.1.2. Uslužno orijentirana arhitektura (SOA) SOA predstavlja vid softverske arhitekture koji osnažuje korištenje slabo povezanih usluga s ciljem ostvarivanja potreba poslovnih procesa i korisnika. Resursi na računalnoj mreži prilagođeni SOA okruženju dostupni su kao neovisne usluge kojima se može pristupiti ne poznavajući pozadinsku implementacijsku platformu. SOA može biti implementirana korištenjem raznih tehnologija poput REST-a, RPC-a, DCOM-a, CORBA-e ili Web usluga. Također može biti implementirana ne koristeći niti jedan od navedenih protokola; npr. može koristiti datotečni sustav za prijenos podataka u skladu sa specifikacijom sučelja među procesima kompatibilnim sa SOA konceptima. Poanta je da neovisne usluge sa definiranim sučeljima mogu biti pozvane (sa ciljem izvršavanja određenog zadatka) na standardan način bez da usluga ima ikakvog predznanja o pozvanoj aplikaciji i bez da aplikacija zna na koji će način usluga izvršiti svoj zadatak. 6

SOA je dizajnirajući model za povezivanje računalnih resursa (uglavnom aplikacija i podataka) s ciljem ostvarivanja zadovoljavajućeg rezultata za korisnike usluga. OASIS definira SOA-u kao paradigmu za organizaciju i korištenje sposobnosti koje mogu biti pod kontrolom različitih domena. SOA omogućuje jedinstven način ponude, otkrivanja, interakcije i korištenja mogućnosti za postizanje željenih učinaka u skladu sa preduvjetima i očekivanjima. Slika 4. Elementi SOA-e SOA može biti temeljena na standardima Web usluga koje su postigle široku primjenu (npr. koristeći SOAP). Ti standardi (također znani kao specifikacije Web usluge) omogućuju bolje međudjelovanje i ograđivanje od korištenja isključivo jednog, predloženog softvera. SOA se obično definira kao usluge predstavljene stogom protokola Web usluga. Osnovni nivo standarda Web usluge koji odgovara SOA-i uključuje XML, HTTP, SOAP, WSDL i UDDI. Međutim, sustav da bi bio uslužno orijentiran ne mora nužno koristiti niti jedan od navedenih standardna, a može ih koristiti sve. 2.1.3. Uloge Web usluga Web usluge mogu igrati različite uloge ovisno o scenariju interakcija. Ovisno o kontekstu kojim se gleda i o stanju trenutnog zadatka koji se izvršava, ista Web usluga može mijenjati uloge ili igrati više uloga u isto vrijeme. 7

Pružatelj usluge Kada se ponaša kao pružatelj usluge, Web usluga daje javno sučelje preko kojeg može biti pozvana. Pružatelj usluge promovira sučelje Web usluge objavljujući njen opis. Analogno klijent-server modelu, pružatelj usluge je u ulozi servera (slika 4) Slika 5. Web usluga u ulozi pružatelja usluge Pružatelj usluge može se također ponašati i kao primatelj usluge. Npr. Web usluga može imati ulogu pružatelja usluge kada primatelj usluge zahtjeva od njega da izvrši neku funkciju. Kasnije se ona ponaša kao primatelj usluge jer kontaktira primatelja usluge (koji sada ima ulogu pružatelja usluge) tražeći statusne informacije. Primatelj usluge Primatelj usluge je pošiljatelj Web poruke koja predstavlja zahtjev za Web uslugom ili aplikacija koja zahtjeva određenu Web uslugu. Shodno analogiji klijent-server modela, primatelj usluge ima ulogu klijenta (slika 5). 8

Slika 6. Web usluga u ulozi primatelja usluge Pri komunikaciji sa pružateljom usluge, kod dobivanja zahtjeva za statusom, primatelj usluge i sam postaje pružatelj usluge jer odgovara na taj zahtjev. Posrednik Posredničke Web usluge primaju poruku od primatelja Web usluge i prosljeđuju je pružatelju usluge. U tom smislu posrednik djeluje i kao pružatelj usluge (pri primitku poruke) i kao primatelj usluge (pri njenom prosljeđivanju) (slika 6). Slika 7. Web usluga u ulozi posrednika između pružatelja i primatelja usluge Postoje različiti tipovi posrednika. Neki su pasivni i samo prosljeđuju poruke, dok drugi aktivno procesiraju poruku prije samog prosljeđivanja. U praksi se posrednicima dopušta samo izmjena zaglavlja, a ne i sadržaja poruke, kako bi se očuvao njen integritet. 9

U posredničkoj strukturi Web usluga razlikujemo još i pojmove početni pošiljatelj (Web usluga koja započinje prijenos poruke) te konačni primatelj (Web usluga koja predstavlja posljednju etapu puta poruke, tj. odredište) 2.2. Web Services Description Language (WSDL) Web usluge trebaju biti definirane na konzistentan način kako bi ih druge usluge i aplikacije otkrile te izgradile sučelje prema njima. Web usluge se opisuju jednom od specifikacija W3C-a WSDL jezikom. Okruženje Web usluga uvodi integracijski sloj, koji utemeljuje standardno, opće poznato i podržano programsko sučelje (slika 7). Slika 8. Integracijski sloj WSDL omogućuje komunikaciju između tih slojeva dajući standardizirani opis krajnjih točaka. 2.2.1 WSDL dokument Sagledavajući svaki konstrukt definicije, najbolje će se razumjeti kako je jedna Web usluga definirana pomoću WSDL dokumenta. <definitions> <message name= BookInfo > 10

<part name= title type= xs:string > Field Guide </part> <part name= author type= xs:string > Mr. T </part> </message> <interface name= Catalog > <operation name= GetBook > <input name= Msg1 message= BookInfo /> </operation> </interface> <service> <binding name= Binding1 > <operation name= GetBook > <input name= Msg1 message= BookInfo /> </operation> </binding> <endpoint name= End1 binding= Binding1 > detalji implementacije </endpoint> </service> <types> <xsd:schema targetnamespace= http://www.examples.ws xmlns= http://www.w3.org/2000/10/xmlschema > </xsd:schema> </types> <documentation> Tekstualni opis usluge; dokumentacija </documentation> </definitions> Korijenski element definitions je kontejner cijele definicije usluge. Jedna WSDL definicija može sadržavati skupove sljedećih primarnih konstrukata: interface, 11

message, service i binding. Prva dva konstrukta predstavljaju definiciju sučelja usluge, dok zadnja dva pružaju detalje o njenoj implementaciji. Slika 9. Preslikavanje značajki Web usluge u WSDL dokument Definicija sučelja <message name= BookInfo > <part name= title type= xs:string > Field Guide </part> <part name= author type= xs:string > Mr. T </part> </message> <interface name= Catalog > <operation name= GetBook > <input name= Msg1 message= BookInfo /> </operation> </interface> Pojedinačna sučelja usluge reprezentirana su interface elementima, od kojih svaki sadrži grupu logički povezanih operacija. U komponentno-orijentiranoj arhitekturi WSDL interface je usporediv sa sučeljem komponente, dok je operacija ekvivalentna metodi komponente jer predstavlja jednu akciju ili funkciju. Izvršavanje jedne operacije, koja se sastoji od grupe ulaznih i izlaznih poruka, podrazumijeva prijenos tih poruka između pružatelja i primatelja usluge. Te su poruke predstavljene konstruktima message čija se imena kasnije referenciraju u input i 12

output elementima konstrukata operation. Svaki message element može sadržavati jedan ili više ulaznih ili izlaznih parametara koji pripadaju nekoj operaciji. Ti se parametri definiraju part elementima. U komponentno-orijentiranoj arhitekturi WSDL part je ekvivalent ulaznom parametru ili povratnoj vrijednosti metode komponente. Definicija implementacije Pomoću elemenata definicije implementacije, WSDL dokument može izgradit konkretne detalje povezivanja za protokole kao što su SAOP i HTTP. <service> <binding name= Binding1 > <operation name= GetBook > <input name= Msg1 message= BookInfo /> </operation> </binding> <endpoint name= End1 binding= Binding1 > detalji implementacije </endpoint> </service> Unutar WSDL dokumenta, konstrukt service predstavlja jednu ili više krajnjih točaka na kojima je Web usluga dostupna. Te krajnje točke, reprezentirane endpoint elementima, sadrže informacije o protokolu i lokaciji. Element binding pridružuje informacije o protokolu i obliku poruke operacijama. Operation konstrukt u binding bloku mora imati dvojnika u interface konstruktu. Dodatni konstrukti U dodatne konstrukte ubrajaju se types i documentation. 13

<types> <xsd:schema targetnamespace= http://www.examples.ws xmlns= http://www.w3.org/2000/10/xmlschema > </xsd:schema> </types> Types element nosi dodatno obilježje koje se koristi kao podrška tipovima podataka za definiciju Web usluga. Taj konstrukt omogućuje integraciju XSD shema u dokument definicije. <documentation> Tekstualni opis usluge; dokumentacija </documentation> Na posljetku, element documentation omogućuje integraciju dodatnih bilješki i napomena. 2.3. Simple Object Access Protocol (SOAP) SOAP je protokol za razmjenu XML poruka preko računalne mreže koristeći HTTP protokol. SOAP formira temeljni sloj stoga Web usluga omogućujući temeljni okvir za izmjenu poruka koji apstraktniji slojevi mogu nadograđivati. Postoji nekoliko različitih tipova poruka u SOAP-u, ali najrašireniji je poziv udaljenim procedurama (Remote Procedure Call RPC) tip poruka u kojem jedan čvor u mreži (klijent) šalje zahtjev drugom čvoru (server), a server odmah vraća odgovor na primljeni zahtjev. SOAP je sljedbenik XML-a i RPC-a iako koristi drugačiji prijenos, interakcijsku neutralnost i omot/zaglavlje/tijelo poruke. Iako su i SMTP i HTTP odgovarajući protokoli za prijenos SOAP poruka, uvažen je HTTP jer dobro podržava današnju Internet infrastrukturu; SOAP dobro surađuje sa firewall-ima koristeći HTTP. 14

XML je izabran kao standard SOAP poruke zbog njegove proširenosti i truda u open source razvoju. Samim time razni besplatni alati olakšavaju nadogradnju implementacija baziranih na SOAP-u. Slabosti SOAP-a su: - Zbog dugačkog XML formata, SOAP može biti sporiji nego konkurentne tehnologije poput CORBE. Ovo ne bi smio biti problem ukoliko se prenose kratke poruke. - Kada se oslanja na HTTP kao prijenosni protokol i ne koristi WS-adresiranje ili ESB, uloge komunicirajućih strana su fiksne. Samo jedna strana (klijent) može koristiti usluge druge strane. Zbog toga programeri koriste cikličko ispitivanje rađe nego notifikaciju u takvim slučajevima. - Oslanja se na WSDL koji je vanjski standard. Ne postoji standardan način dinamičkog otkrivanja Web usluga (metoda, parametara) već je nužno primiti WSDL poruku o Web usluzi. Slijedi primjer SOAP poruke koju šalje klijent pri zahtjevu za konkretnim podatkom od pružatelja usluge. Primatelj želi znati koji podatak odgovara ID-u 827635. <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:body> <getproductdetails xmlns="http://warehouse.example.com/ws"> <productid>827635</productid> </getproductdetails> </soap:body> </soap:envelope> Odgovor pružatelja usluge na zahtjev primatelja je sljedeća SOAP poruka: <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:body> <getproductdetailsresponse xmlns="http://warehouse.example.com/ws"> <getproductdetailsresult> <productname>toptimate 3-Piece Set</productName> <productid>827635</productid> <description>3-piece luggage set. Black Polyester.</description> <price>96.50</price> <instock>true</instock> </getproductdetailsresult> </getproductdetailsresponse> </soap:body> </soap:envelope> 15

2.4. Universal Description, Discovery and Integration (UDDI) UDDI je neovisan o platformi, bazira se na XML-u, a koristi se za objavu liste usluga i međusobno otkrivanje istih. Također definira način na koji usluge ili softverske aplikacije surađuju putem Interneta. UDDI poslovna registracija sastoji se od tri dijela: - Bijele stranice: adresa, kontakt i poznati identifikatori - Žute stranice: industrijska kategorizacija - Zelene stranice: tehničke informacije o usluzi UDDI je jedan od osnovnih standarda Web usluga. Dizajniran je kako bi mu mogle pristupiti SOAP poruke i ispitati njegov sadržaj ne bi li omogućile pristup WSDL dokumentima, opisujući korištene protokole i oblike poruka, kako bi mogli pristupati Web uslugama opisanima u UDDI direktoriju. UDDI je integriran u interoperabilnost Web usluge (Web-service Interoperability WS-I) kao centralni nosioc infrastrukture Web usluga. Do kraja 2005. godine više od 70% kompanija iz skupine Fortune 500 imalo je u planu koristiti ili su već koristile u javnoj ili privatnoj domeni UDDI. Mnoge od tih kompanija su se pretplatile na neku od SOA arhitektura. UDDI specifikacije podržavaju javno pristupačan jedinstveni poslovni registar u kojem je nazivlje usluga konfigurirano od strane UDDI brokera. Javni poslovni registar omogućuje pristup informacijama bilo kojoj klijentskoj aplikaciji. 3. Zaključak Pojavom Interneta počela je globalizacija svijeta u svim segmentima ljudskog života, ponajprije računalnom. Tehnologije se rađaju i koriste zahvaljujući svojim pozitivnim aspektima i raširenosti, ili pak izumiru zbog svojih nedostataka ili slabe rasprostranjenosti. U moru Web tehnologija, Web usluge se ističu nad ostalima, ponajprije radi centraliziranosti (UDDI), dobre definicije pojedine Web usluge (WSDL) te lakoće komunikacije među strankama (SOAP). Također, Web usluge danas imaju izuzetno široku primjenu. Jedna od primjena je i u domeni upravljanja komunikacijskim 16

mrežama i uslugama. Web usluga kao krajnja točka u komunikaciji između primatelja i pružatelja usluge opisana je varijabilnim upravljačkim sučeljem dostupnim primatelju usluge. Koristeći specifikacije iz tog sučelja, primatelj usluge može kontrolirati kvalitetu usluge, ostvariti dogovor o razini usluge, nadzirati izvršavanje određenog zadatka i neposredno upravljati životnim ciklusom određene usluge. Upravljanje korištenjem Web usluge vrlo je korisno, štoviše, neophodno kada Web usluga predstavlja hardversku komponentu koja izvršava neki zadatak ili npr. kompleksniju komponentu koja predstavlja sintezu poslovnih procesa ili aplikacijski server. 4. Literatura http://wiki.apache.org/ws/frontpage/axis/axisgeneral http://en.wikipedia.org/wiki/service-oriented_architecture http://en.wikipedia.org/wiki/soap http://en.wikipedia.org/wiki/uddi http://www.phptr.com/articles/article.asp?p=336265&seqnum=1&rl=1 http://infolab.uvt.nl/pub/papazogloump-2003-52.pdf Web Services Distributed Management Using Web Services (MUWS 1.0) Part 1 17