Download presentation
Presentation is loading. Please wait.
1
IDU0075 Sissejuhatus veebiteenustesse
Tarvo Treier
2
Sissejuhatus veebiteenustesse
Uus informaatika ja äriinfotehnoloogia bakalaureuseõppe aine IDU0075 „Sissejuhatus veebiteenustesse“. Annab üldised teadmised: Teenus-orienteeritud arhitektuuri põhimõtetest Veebiteenustega seotud standarditest ja töövahenditest. Praktilised oskused: veebiteenuste tuvastamine veebiteenuste kirjeldamine veebiteenuste realiseerimine veebiteenuste kasutamine veebiteenuste testimine Tarvo Treier
3
Tarvo Treier tarvo.treier@gmail.com
KORRALDUS Kohtumised: + eksamisessioon Tarvo Treier
4
Tarvo Treier tarvo.treier@gmail.com
Materjalid Raamat Java SOA cookbook Pdf: Tarvo Treier
5
Tarvo Treier tarvo.treier@gmail.com
Õ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
6
Tarvo Treier tarvo.treier@gmail.com
Hindamine eksamil Teooriatest (40% hindest) WSDL-i koostamine (20% hindest) Projekt (40% hindest) + Boonuspunktid (kuni 15% hindest) Tarvo Treier
7
Tarvo Treier tarvo.treier@gmail.com
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
8
Tarvo Treier tarvo.treier@gmail.com
WSDL-i koostamine Tuleb luua ühe veebiteenuse kirjeldus. Peab saama vähemalt 11 punkti 20-st. Tarvo Treier
9
Tarvo Treier tarvo.treier@gmail.com
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
10
Tarvo Treier tarvo.treier@gmail.com
Boonuspunktid Boonuspunkte on võimalik koguda praktikumide ajal iseseisvaid ülesandeid ette näidates. Tarvo Treier
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
12
Tarvo Treier tarvo.treier@gmail.com
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
13
Tarvo Treier tarvo.treier@gmail.com
Mis on veebiteenus? Tarvo Treier
14
Tarvo Treier tarvo.treier@gmail.com
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
15
Tarvo Treier tarvo.treier@gmail.com
Veebiteenused 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
16
Veebiteenuse väljakutse demo
SoapUI ( Temperatuuri konverteerimise teenus Tarvo Treier
17
Tarvo Treier tarvo.treier@gmail.com
1. boonuspunkt Otsi töötav tasuta veebiteenus, mida saab SoapUI-ga käivitada. Boonuspunkti saab kätte teises praktikumis Tarvo Treier
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
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
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
21
Tarvo Treier tarvo.treier@gmail.com
... ja puudused Suurem keerukus Väiksem jõudlus ... Tarvo Treier
22
Service-oriented architecture (SOA)
Arhitektuur, mis kasutab teenuseid organisatsiooni integrastiooni ehitusklotsidena komponentide taaskasutust läbi nõrga seotuse. Tarvo Treier
23
Tarvo Treier tarvo.treier@gmail.com
SOA: On arhitektuur Mingi hulga teenuste tegemine ei anna meile SOA-d. Arhitektuur peab andma meile juhised teenuste loomiseks. Tarvo Treier
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
25
Tarvo Treier tarvo.treier@gmail.com
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
26
Tarvo Treier tarvo.treier@gmail.com
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
27
Tarvo Treier tarvo.treier@gmail.com
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
28
Tarvo Treier tarvo.treier@gmail.com
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
29
Tarvo Treier tarvo.treier@gmail.com
..jätkub SOA annab meile raamistiku, kus mitmed mittefunktsionaalsed nõuded on juba täidetud. Näiteks turvalisus. Arendajad keskenduda äriprobleemidele. Tarvo Treier
30
Tarvo Treier tarvo.treier@gmail.com
XML Tarvo Treier
31
Tarvo Treier tarvo.treier@gmail.com
XPath Tarvo Treier
32
Tarvo Treier tarvo.treier@gmail.com
33
Veebiteenustega seotud standardid
Tarvo Treier
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 Tarvo Treier
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
36
Tarvo Treier tarvo.treier@gmail.com
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
37
Tarvo Treier tarvo.treier@gmail.com
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
38
Tarvo Treier tarvo.treier@gmail.com
Näide <?xml version="1.0" ?> <Employees xmlns=" xmlns:xsi=" xsi:schemaLocation=" <Employee> <SSN> </SSN> <Name>ED HARRIS</Name> <DateOfBirth> </DateOfBirth> <EmployeeType>FULLTIME</EmployeeType> <Salary>4000</Salary> </Employee> </Employees> Allikas: Tarvo Treier
39
Näide jätkub (employee.xsd)
<xsd:schema xmlns:xsd=" <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
40
Tarvo Treier tarvo.treier@gmail.com
XML Schema patterns Hewitt, E., Java SOA Cookbook, O’Reilly Media, 2009 Lk 41; p2.1 Tarvo Treier
41
Tarvo Treier tarvo.treier@gmail.com
Muster “Russian Doll” Üks juurelement on globaalne Kõik tüübid on lokaalsed Tarvo Treier
42
Tarvo Treier tarvo.treier@gmail.com
Muster “Salami Slice” Kõik elemendid on globaalsed Kõik tüübid on lokaalsed Tarvo Treier
43
Muster “Venetian Blind”
Üks juurelement on globaalne Kõik tüübid on globaalsed Tarvo Treier
44
XSLT iseseisvaks uurimiseks
Tarvo Treier
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.