arvutiteaduse instituudi lõputööderegister


Süvaveebi kuvamine automaatsete OpenAjax Hub vidinate genereerimise abil
Nimi Karli Kirsimäe
Kokkuvõte Antud magistritöö uurib, kuidas lihtsustada esitluskihil SOAP protokolli kasutavate veebiteenuste, mis on osa süvaveebist, kasutamist. Sellise teema valimist motiveerib asjaolu, et rakenduste kompositsiooniline raskuskese liigub üha enam esitluskihi suunas, kuid hetkel ei ole veebilehitsejale omaste tehnoloogiatega võimalik väliste domeenide teenuseid kasutada, nende väljundit kuvada ja teenuseid omavahel siduda. Et välja selgitada, kuidas antud probleemi lahendada, uuriti, mis on hetkel sellise lähenemise kasutusse võtmisel peamised pidurdavad tegurid. Selgus, et põhilisi raskusi tekitavad asjaolud, et veebilehitsejad ei võimalda teha päringuid rakenduse suhtes välistesse domeenidesse ja et JavaScriptis on SOAP päringute koostamise tugi võrdlemisi limiteeritud. Lisaks tõdeti, et teenustest saadava info visualiseerimine nõuab teenuse väljundi ja kuvamisloogika manuaalset kokku-traageldamist (hard-wiring ing k). Probleemi lahendamiseks otsustati kasutada nö veebividinapõhist lähenemist, kus iga teenuse operatsiooni jaoks genereeritakse nähtamatu JavaScripti vidin, millelt saadav info muudetakse nähtavaks mõne teise vidina poolt. Sellise lähenemise rakendamiseks loodi kaheosaline raamistik, mis koosneb kliendikihist ja serverikihist. Vidinate suhtlemise võimaldamiseks võeti kasutusele OpenAjax Hub raamistik, mis toimib vidinatevaheliste sõnumite vahendajana. Selleks, et vidinad ei oleks tihedalt kokku traageldatud, võeti appi Transformer Widget. Transformer Widget lisab OpenAjax Hub vidinatele võimaluse omavahel suhelda, kasutades semantilist integreerimist. Nähtamatute vidinate genereerimiseks loodi eraldi OpenAjax Hub vidin - Proxy Widget. See toimib teenuseid tarbivate vidinate ja tegeliku teenuse vahelise puhvrina ning lisaks hoolitseb selle eest, et vidin oleks korrektselt Transformer Widgetis registreeritud. Transformer Widgetis registreerimiseks pakub tuge ka serveripool. Serveris genereeritakse selle jaoks dokument, mis kirjeldab vidinate struktuuri ja semantikat ning lisaks ka skeem JSON vormingus andmete kirjeldamiseks. Serveripool kasutab selle jaoks teenuse semantiliselt annoteeritud WSDL keeles kirjeldust, kust saadakse kõik vajalik informatsioon. Proxy Widgeti puhverdamisloogika toimib nii, et esitluskihis võetakse sisendisse JSON vormingus andmed, mille abil luuakse JSON-RPC päring. See saadetakse edasi serveripoolele, mis omakorda transformeerib päringu SOAP päringuks ning saadab lõppteenusele. Lõppteenuselt saadud vastus teisendatakse tagasi JSON-RPC päringuks ning edastatakse Proxy Widgetile. Välja pakutud lahenduse toimimist testiti näidisrakendusega, kus esitluskihi tasemel võimaldati tarbida kolme Äriregistri teenust - firmade leidmine nime järgi, firma aastaaruannete leidmine ning aastaaruannete andmete leidmine. Näidisrakendus tõestas, et teenuste tarbimine ning andmete kuvamine osutus antud lahendusega oluliselt lihtsamaks. Lisaks oli see tõestuseks, et teenuste tarbimine oli võimalik vaid veebilehitsejale omaste tehnoloogiate kasutamisega.
Lõputöö keel inglise
Lõputöö tüüp Magister - Infotehnoloogia
Juhendaja(d) Peep Küngas
Kaitsmise aasta 2011
PDF