1 / 44

IDU0075 Sissejuhatus veebiteenustesse

IDU0075 Sissejuhatus veebiteenustesse. Tarvo Treier Tarvo.treier@gmail.com. Sissejuhatus veebiteenustesse. U us informaatika ja äriinfotehnoloogia bakalaureuseõppe aine ID U 0075 „Sissejuhatus veebiteenustesse“. Annab üldised teadmised: T eenus-orienteeritud arhitektuuri põhimõt etest

morrie
Download Presentation

IDU0075 Sissejuhatus veebiteenustesse

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IDU0075 Sissejuhatus veebiteenustesse Tarvo Treier Tarvo.treier@gmail.com

  2. Sissejuhatus veebiteenustesse Uus informaatika ja äriinfotehnoloogia bakalaureuseõppe aine IDU0075 „Sissejuhatus veebiteenustesse“. • Annab üldised teadmised: • Teenus-orienteeritud arhitektuuri põhimõtetest • Veebiteenustega seotudstandarditest ja töövahenditest. • Praktilised oskused: • veebiteenuste tuvastamine • veebiteenuste kirjeldamine • veebiteenuste realiseerimine • veebiteenuste kasutamine • veebiteenuste testimine Tarvo Treier tarvo.treier@gmail.com

  3. KORRALDUS Kohtumised: • 24.09.2011 • 08.10.2011 • 03.13.2011 + eksamisessioon Tarvo Treier tarvo.treier@gmail.com

  4. Materjalid • http://www.tud.ttu.ee/material/treier/idu0075/2011/kaug/ • Raamat Java SOA cookbook Pdf: http://www.filecrop.com/java-soa-cookbook.html Tarvo Treier tarvo.treier@gmail.com

  5. Õpiväljundid • Teab veebiteenuste kasutusvõimalusi ja puudusi. • Teab peamiseid veebiteenustega seotud standardeid ja protokolle. • Teab algtasemel teenus-orienteeritud arhitektuuri. • Oskab veebiteenuse kanditaate tuvastada. • Oskab veebiteenuseid kirjeldada kasutades WSDL-i ja XSD-d • Oskab veebiteenuseid realiseerida keeles Java. • Oskab veebiteenuseid testida. • Oskab luua ja kirjeldada XML dokumenti ja tema struktuuri. • Oskab otsida XML dokumendist kasutades päringukeelt XPath. • Oskab transformeerida XML dokumenti kasutades XSLT-d. Tarvo Treier tarvo.treier@gmail.com

  6. Hindamine eksamil • Teooriatest (40% hindest) • WSDL-i koostamine (20% hindest) • Projekt (40% hindest) + Boonuspunktid (kuni 15% hindest) Tarvo Treier tarvo.treier@gmail.com

  7. Teooriatest • Nii teoreetilised kui praktilised ülesanded seni loengutes ja praktikumides käsitletud teemadel. • Valikvastustega • Peab saama vähemalt 21 punkti 40-st. • Abivahendeid kasutada ei tohi! Tarvo Treier tarvo.treier@gmail.com

  8. WSDL-i koostamine • Tuleb luua ühe veebiteenuse kirjeldus. • Peab saama vähemalt 11 punkti 20-st. Tarvo Treier tarvo.treier@gmail.com

  9. Projekt • Koosneb veebiteenuste projekteerimisest, realiseerimisest, kasutamisest ja testimisest. • Projekti eest peab saama vähemalt 21 punkti 40-st. • Projekt peab olema esitatud kaks päeva enne kaitsmisele tulekut. Tarvo Treier tarvo.treier@gmail.com

  10. Boonuspunktid • Boonuspunkte on võimalik koguda praktikumide ajal iseseisvaid ülesandeid ette näidates. Tarvo Treier tarvo.treier@gmail.com

  11. Eeldused aine edukaks läbimiseks • Aeg • Aeg iseseisvate ülesannetega pusimiseks. • Elementaarne java oskus: • Klass / objekt • IF ja FOR • Muutujate väärtustamine • Kasuks tuleb: • Liideste tundmine Tarvo Treier tarvo.treier@gmail.com

  12. VEEBITEENUSED • Maailmas on palju programmeerimiskeeli, milles saab rakendusi kirjutada. • Vahel on vaja need rakendused omavahel rääkima panna. • Siinkohal võib osutuda heaks valikuks veebiteenused. Tarvo Treier tarvo.treier@gmail.com

  13. Mis on veebiteenus? Tarvo Treier tarvo.treier@gmail.com

  14. Veebiteenus • Veebiteenus on üle veebi (http) välja kutsutav (käivitatav) meetod (protseduur või funktsioon). • Veebiteenust kutsutakse välja SOAP formaadis sõnumiga ja vastus saadakse samuti SOAP formaadis. • Sarnaselt tavaliste funktsioonidega saab ka veebiteenuse väljakutsel määrata sisendparameetreid. Tarvo Treier tarvo.treier@gmail.com

  15. Veebiteenused • http://www.w3.org/TR/ws-gloss/ • A software system designed to support interoperable machine-to-machine interaction over a network • It has an interface described in a machine-processable format(WSDL) • Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards Tarvo Treier tarvo.treier@gmail.com

  16. Veebiteenuse väljakutse demo • SoapUI (http://www.soapui.org/) • Temperatuuri konverteerimise teenus • http://www.w3schools.com/webservices/tempconvert.asmx?WSDL Tarvo Treier tarvo.treier@gmail.com

  17. 1. boonuspunkt • Otsi töötav tasuta veebiteenus, mida saab SoapUI-ga käivitada. • Boonuspunkti saab kätte teises praktikumis 08.10.2011. Tarvo Treier tarvo.treier@gmail.com

  18. Mõned mõisted ja lühendid • Liides (interface) • WS (web service) • SOA (service oriented architecture) • XML (extensible markup language) • XPath (XML path language) Tarvo Treier tarvo.treier@gmail.com

  19. Pilt veebiteenuste abil integreerimisest • Erinevad platvormid ja programmeerimiskeeled • Erinevad kasutajaliidesed ühel kesksüsteemil • Erinevad organisatsioonid • Varjatud realisatsioon • Kliendi ja teenusepakkuja sõltumatu arendus Tarvo Treier tarvo.treier@gmail.com

  20. Veebiteenuste eelised.. • Erinevate platvormide rakenduste koostöö võimaldamine • Teksti põhised ja avatud standardid on arendajale arusaadavad • Annavad võimaluse erinevate ettevõtete erinevas kohas asuvaid rakendusi ja teenuseid integreerida üheks uueks teenuseks • Veebiteenuste taaskasutamise võimalus Tarvo Treier tarvo.treier@gmail.com

  21. ... ja puudused • Suurem keerukus • Väiksem jõudlus • ... Tarvo Treier tarvo.treier@gmail.com

  22. Service-oriented architecture (SOA) • Arhitektuur, mis kasutab • teenuseid organisatsiooni integrastiooni ehitusklotsidena • komponentide taaskasutust läbi nõrga seotuse. Tarvo Treier tarvo.treier@gmail.com

  23. SOA: On arhitektuur • Mingi hulga teenuste tegemine ei anna meile SOA-d. • Arhitektuur peab andma meile juhised teenuste loomiseks. Tarvo Treier tarvo.treier@gmail.com

  24. SOA: Ehitatakse teenustest • Nagu objekt-orienteeritud maailmas on objekt/klass nii on SOA-s teenus peamine komponent. • Ilma teenusteta pole meil millestki ehitada, midagi jälgida (monitor) ega käivitada. Tarvo Treier tarvo.treier@gmail.com

  25. SOA: integratsioon • SOA esindab ühte võimalust süsteemide integratsiooniks. • Erinevate süsteemide kokkuühendamise võib lahendada mõne P2P lahendusega palju kiiremini. • Samas võib minna alternatiivide puhul ka palju rohkem aega, kuna süsteemid räägivad erinevat keelt (sõnumite formaat). • SOA kasutab sõnumivahetuses XML-i. Tarvo Treier tarvo.treier@gmail.com

  26. SOA: nõrk seotus • SOA-s püütakse teha nõrgalt seotud komponente, ehk teenuseid, mis ei tea midagi klientidest, kes neid kasutama hakkavad. Tarvo Treier tarvo.treier@gmail.com

  27. SOA: taaskasutus • Pole alati hädavajalik. • Samas, kui ühegi komponendi taaskasutus võimalust pole ega näe ka tulemas, siis on tõenäoliselt tegu üle mõeldud lahendusega ja kindlasti mitte SOA-ga. Tarvo Treier tarvo.treier@gmail.com

  28. SOA müügijutt.. • Kattes oma süsteemi selgroo (mission critical) veebiteenustega, mis opereerivad SOA raamistikul, saad sa kergesti • laiendatava, • taaskasutatava ja • asendatava lahenduse. Tarvo Treier tarvo.treier@gmail.com

  29. ..jätkub • SOA annab meile raamistiku, kus mitmed mittefunktsionaalsed nõuded on juba täidetud. • Näiteks turvalisus. • Arendajad keskenduda äriprobleemidele. Tarvo Treier tarvo.treier@gmail.com

  30. XML Tarvo Treier tarvo.treier@gmail.com

  31. XPath Tarvo Treier tarvo.treier@gmail.com

  32. Tarvo Treier tarvo.treier@gmail.com

  33. Veebiteenustega seotud standardid Tarvo Treier tarvo.treier@gmail.com

  34. XSD - XML Schema Definition • XSD kirjeldab XML dokumendi struktuuri • Elemendid (Elements) • Atribuudid (Attributes) • Nende tüübid • Tavatüübid (Simple types) • Komplekstüübid (Complex types) • Piirangud (Restrictions) • XSD õppetund w3Schools lehel • http://w3schools.com/schema/ Tarvo Treier tarvo.treier@gmail.com

  35. XSD võrdlused andmebaasi tabelite ja java klassidega • XSD – Document structure • Table structure • Class definition • XML – Document instance • Record in a Table • Object instance Tarvo Treier tarvo.treier@gmail.com

  36. XSD määrab.. • Millised elemendid ja atribuudid tohivad olla dokumendis • Millised elemendid on alamelemendid • Alamelementide järjestuse ja arvu • Kas element on tühi või sisaldab teksti • Andmetüübid elementide ja atribuutide jaoks • Vaikimisi ja fikseeritud väärtused elementidele ja atribuutidele • Piirangud Tarvo Treier tarvo.treier@gmail.com

  37. NB! Nimeruumid Nimeruum (namespace) on lihtsalt loogiline (elementide ja tüüpide) nimede grupeering Nimeruumis peavad nimed olema unikaalsed Ühes XSD failis defineeritakse üks nimeruum Arst: Kand Põlv Klapp Pump Torumees: Põlv Klapp Pump Toru Tarvo Treier tarvo.treier@gmail.com

  38. Näide <?xml version="1.0" ?> <Employees xmlns="http://www.abccorp.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.abccorp.com/employee.xsd"> <Employee> <SSN>737333333</SSN> <Name>ED HARRIS</Name> <DateOfBirth>1960-01-01</DateOfBirth> <EmployeeType>FULLTIME</EmployeeType> <Salary>4000</Salary> </Employee> </Employees> Allikas: http://www.15seconds.com/issue/031209.htm Tarvo Treier tarvo.treier@gmail.com

  39. Näide jätkub (employee.xsd) <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:element name="Employee" minOccurs="0" maxOccurs="unbounded"> <xsd:complexType> <xsd:sequence> <xsd:element name="SSN" type ="xsd:string"/> <xsd:element name="Name" type="xsd:string"/> <xsd:element name="DateOfBirth" type="xsd:date"/> <xsd:element name="EmployeeType"type="xsd:string"/> <xsd:element name="Salary" type="xsd:long"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> Tarvo Treier tarvo.treier@gmail.com

  40. XML Schema patterns • Hewitt, E., Java SOA Cookbook, O’Reilly Media, 2009 • http://books.google.com/books?id=W2XrQRMIEd4C&lpg=PP1&pg=PP1#v=onepage&q&f=false • Lk 41; p2.1 Tarvo Treier tarvo.treier@gmail.com

  41. Muster “Russian Doll” • Üks juurelement on globaalne • Kõik tüübid on lokaalsed Tarvo Treier tarvo.treier@gmail.com

  42. Muster “Salami Slice” • Kõik elemendid on globaalsed • Kõik tüübid on lokaalsed Tarvo Treier tarvo.treier@gmail.com

  43. Muster “Venetian Blind” • Üks juurelement on globaalne • Kõik tüübid on globaalsed Tarvo Treier tarvo.treier@gmail.com

  44. XSLT iseseisvaks uurimiseks • http://www.tud.ttu.ee/material/treier/idu0075/2011/Loengud/L4_xslt_wsdl/L4_XSLT.ppt • http://www.tud.ttu.ee/material/treier/idu0075/2011/Harjutused/H4_XSLT/h4_xslt.ppt Tarvo Treier tarvo.treier@gmail.com

More Related