IDU0075 Sissejuhatus veebiteenustesse

Slides:



Advertisements
Similar presentations
IDU0075 Sissejuhatus veebiteenustesse
Advertisements

IDU0075 Sissejuhatus veebiteenustesse Tarvo Treier
IDU0075 Veebiteenused Tarvo Treier
Kärdla School. School About 500 students About 40 teachers State school High school Primary school 12 grades.
3c.1 Elements of a WSDL document. 3c.2 Web Service Definition Language (WSDL) A W3C standard XML document that describes three fundamental properties.
WSDL Homework - Plenio. WSDL - Structure Source: w3schools.com.
XML Technologies and Applications Rajshekhar Sunderraman Department of Computer Science Georgia State University Atlanta, GA 30302
Homework 3 Ed Kaszubowski. Timing Assignment Rcvd Mon, Feb 26 th Due in 2 weeks – Mon, Mar 12 th Didn’t work on it in week 1 Didn’t get the Reschedule.
“Fausti” elufilosoofiad
Korporatiivse informatsiooni integratsioon Tehnoloogiad EAI, EII, ETL.
Agiilne tarkvaraarendus kui tarkvara kvaliteedi tõstmise vahend Erik Jõgi
-Open for you only during your university years, don’t miss it! -Later in life you can study, live or work abroad, but nobody will help you organize it.
IDU0075 Sissejuhatus veebiteenustesse Tarvo Treier
Java ja.NET Framework programmide kompileerimine masinkoodi Siim Karus.
IT Kolledzh/TTÜ 2002 T.Tammet IT sissejuhatus loeng 11 lk Sissejuhatus informaatikasse.
Kas Internet’i regulatsioon on võimalik? Euroopalikud vastused Infopoliitika FOORUM 26.veebruaril 2004 Andres Jõesaar.
1 Web Service Description Language (WSDL) 大葉大學資工系.
Protsesside realiseerimine, BPEL Tarvo Treier
LIHASED Koostas Leelo Lusik Are Põhikool Lihaste ülesanded Liigutavad kehaosi Annavad kehale kuju Kaitsevad siseelundeid Lihastes on vee ja valkude.
WSDL Specification WSDL = Web Service Description Language Similar to ASN.1 – describes the abstract on the wire data structures Multiple bindings to on.
Transaction Processing CS409 Application Services Even Semester 2007.
Web services. Introduction to WSDL. February 23, 2006.
A SOAP Binding for NETCONF Ted Goddard draft-goddard-netconfsoap-00.txt.
1 G52IWS: Web Services Description Language (WSDL) Chris Greenhalgh
Ilukirjandus ja infotehnoloogia Kirsi Rannaste 2014.
Discovery of Manageability Clarification
WSDL Enn Õunapuu Tallinna Tehnikaülikool
Training for developers of X-Road interfaces
Uusim Microsofti tarkvara MTÜ-dele: O365
Labs: Create, deploy and test a simple web service
Tarvo Treier IDU0075 Veebiteenused Tarvo Treier
Or… SOA, external services, software reuse
Training for developers of X-Road interfaces
StockQuoteService Configuration
Tarvo Treier IDU0075 Veebiteenused Tarvo Treier
Module 6 Practical part: Creation of X-Road dataservice and client based on WSDL (on Java platform) Name Date.
Advanced Web-based Systems | Misbhauddin
Training for developers of X-Road interfaces
Miks doc-formaadis fail ei ole hea?
Supporting youth in Estonian Unemployment Insurance Fund
Eveli saue, süsteemianalüütik
Martin Luts, CISA Ontoloogiate rakendamine infovarade semantilisel kirjeldamisel Semantika koolitusprogrammi 5. moodul 5moodul =
Reaalaja andmeedastus
Kvaliteet ja standardid
Advanced Web Services: Soap Headers and more
Remo Suurkivi Hansapank 26/10/2005
Süsteemprogrammeerimine keeles C ja C#
Süsteemprogrammeerimine keeles C ja C#
X-tee liideste arendajate koolitused
IDU0075 Sissejuhatus veebiteenustesse
Tootmise automatiseerimine
PMen Import failidest.
Süsteemid ja protsessid sinu arvutis
WEB SERVICES Mr. P. VASANTH SENA.
Praktiline Infotehnoloogia
Alumiste hammaste sensoorne innervatsioon Nervus mylohyoideus’ega
Avo Ots telekommunikatsiooni õppetool,
Ilmselt maailma kõige hullem esitlus
Anname teadushuvile võimaluse! Ettevõtte vaade
BizTalk Martin Maripuu Integratsiooni-arhitekt
Mida teeme riigi turismiturunduses, mida saaks sellest kasutada ettevõtja ja seda koos näidetega.
Läbirääkimised: vormide täitmine Participant Portal’i kaudu.
MÕK 2015/16. õa avakonverents Andres Pajula.
Kunstimuuseumid Kadi Kriit.
Web Based Applications
Semantika Loomulik keel
Rapid antibiotic-resistance predictions from genome sequence data for Staphylococcus aureus and Mycobacterium tuberculosis ehk Mykrobe predictor Phelim.
IDU0075 Sissejuhatus veebiteenustesse
Veebiteenused & XML & XPATH
WEB SERVICES Mahmoud Rabie – EGJUG 2006.
Presentation transcript:

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

Tarvo Treier tarvo.treier@gmail.com Sisukord WSDL Kandidaatide tuvastamine Teenuse definitsioon Teenuste tüübid Modelleerimine WSDL kui süsteemile esitatud nõuete fikseerimise vahend WSDL kui süsteemi simuleerimise alus Tarvo Treier tarvo.treier@gmail.com

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

WSDL (Web Service Definition Language) WSDL on XML põhine keel, mis kirjeldab veebiteenuseid Operatsioonid Sõnumid Andmetüübid Viited http://www.w3.org/TR/wsdl http://w3schools.com/wsdl/default.asp http://www.ws-standards.com/wsdl.asp Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 4

Tarvo Treier tarvo.treier@gmail.com 5

Operatsioonid ja sõnumid Allikas: http://msdn.microsoft.com/en-us/library/ms996486.aspx Tarvo Treier tarvo.treier@gmail.com

WSDL’i elemendid <definitions> <types>... </types> <message>... </message> <portType>... </portType> <binding>... </binding> <service>... </service> </definitions> Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 7

WSDL’i elemendid Types – siin saame XSD importida või kohapeal deklareerida Messages – iga requesti ja response jaoks on siin üks sõnum PortType – kirjeldab operatsioonid ja nende sisend ning väljund sõnumid. Binding - määratakse sõnumivahetuse transport iga operatsiooni kohta (document+literal recommended) Service – nimi ja asukoht Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 8

Näide <message name="getTermRequest"> <part name="term" type="xs:string"/> </message> <message name="getTermResponse"> <part name="value" type="xs:string"/> <portType name="glossaryTerms"> <operation name="getTerm"> <input message="getTermRequest"/> <output message="getTermResponse"/> ... </operation> </portType> Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 9

Teenuse kanditaatide tuvastamine Kui sul on haamer, siis kõik asjad näivad naeltena. Kas kõiki süsteemis olevaid meetodeid on mõtet teha veebiteenusteks? Miks? Tarvo Treier tarvo.treier@gmail.com

Mis on veebiteenus? (Eben Hewitt) Defineeritud liidese abil, mis võib olla platvormist sõltumatu Kättesaadav üle võrgu Liideses defineeritud operatsioonid esinavad äri(toimimis)-funktsioone, mis opereerivad äriobjektidega Tarvo Treier tarvo.treier@gmail.com

Tarvo Treier tarvo.treier@gmail.com Teenuste tüübid 1/2 Olemiteenus (entity) Esindab ühte või mitut äriolemit. CRUD operatsioonid. Näiteks CustomerAccount võib vajada juba teiste osapooltega suhtlemist ja pole enam lihtne olemiteenus. Funktsionaalne teenus Tehnoloogiale orienteeritud teenus (mitte ärile). Abiteenused, mida teised saavad kasutada(logimine, emaili saatmine...) Tarvo Treier tarvo.treier@gmail.com

Tarvo Treier tarvo.treier@gmail.com Teenuste tüübid 2/2 Protsessiteenus Esinab teenust, kus on terve seeria omavahel seotud ülesandeid. Selliste teenuste tükeldamine muudab need teenused veel keerulisemaks. Tarvo Treier tarvo.treier@gmail.com

Teenuste modelleerimine Üldistamine Klient on inimene ja töötaja on inimene Dekomponeerimine Mida väiksemad tükid, seda suurem on tn taaskasutada Agregeerimine Analüüsime, millise teise elemendi osa see teenus olla võiks. See aitab ka dekomponeerida paremini. Tarvo Treier tarvo.treier@gmail.com

Modelleerimise soovitus Ära seo teenusega ühtegi kindlat äriprotsessi. Protsessi koodi hoia BPEL-s või mõnes muus protsessi teenuses. Näide Kui ühel protsessil on vaja kliendi andmeid koos krediidikontrolliga ja teisel ilma, siis tuleks eraldi teha teenus kliendi andmete küsimiseks ja krediidikontrolliks. Tarvo Treier tarvo.treier@gmail.com

WSDL kui süsteemile esitatud nõuete fikseerimise vahend WSDL-i saab edukalt kasutada kasutusjuhtumi lühikirjelduse või kasutusjuhtumi operatsioonide kirjelduse asendusena. Sarnaselt kasutusjuhtumitega saab WSDL-s kirjeldada eeltingimused ja järeltingimused. Eelis antud lähenemisel on võimalus kiirelt kogu protsessi simuleerida ja testida. Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 19

WSDL kui süsteemi simuleerimise alus Kui meil on WSDL-ga kirjeldatud teenus, mida me soovime kasutada, kuid reaalset veebiteenust veel ei eksisteeri, pole võrgust kättesaadav või on tasuline, kuid me soovime siiski WSDL-le vastavat teenust enda testkeskkonnas kasutada, siis aitavad meid Mock teenused. http://www.soapui.org/Service-Mocking/mocking-soap-services.html Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 20

Teenuse simulatsiooni (ServiceMock) kasutamine genereeri WSDL-i põhjal töötav teenuse Mock näiteks SoapUI-ga. http://www.soapui.org/Service-Mocking/mocking-soap-services.html Arendada enda süsteemi kasutades Mock teenust. Hiljem asenda lihtsalt Mock teenuse endpoint reaalse teenuse asukohaga. Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 21

WSDL-i põhjal loodud Mock-ide kasutamise eelised Reaalse teenusega asendamine on valutu. Me ei pea ootama reaalse teenuse arenduse või teenuse kättesaadavaks tegemise tõttu. Saame raha kokku hoida, kui kasutame arenduskeskkonnas reaalse tasulise teenuse asemel ise tehtud teenuse simulatsiooni. Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 22

Mobiil-id simuleerimise näide WSDL https://www.openxades.org:8443/?wsdl Loome ServiceMock-i antud WSDL-i põhjal SoapUI-ga järgmistele operatsioonidele: MobileAuthenticate GetMobileAuthenticateStatus SoapUI WebStart http://www.soapui.org/jnlp/4.0.1/soapui.jnlp Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 23

Mobiil-id näitepäringud MobileAuthenticate <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:dig="http://www.sk.ee/DigiDocService/DigiDocService_2_3.wsdl">    <soapenv:Header/>    <soapenv:Body>       <dig:MobileAuthenticate soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">          <IDCode xsi:type="xsd:string">382xxxxxxxx</IDCode>          <CountryCode xsi:type="xsd:string">EE</CountryCode>          <PhoneNo xsi:type="xsd:string">+372xxxxxxx</PhoneNo>          <Language xsi:type="xsd:string">EST</Language>          <ServiceName xsi:type="xsd:string">Testimine</ServiceName>          <MessageToDisplay xsi:type="xsd:string">Message</MessageToDisplay>          <SPChallenge xsi:type="xsd:string">12345678901234567890</SPChallenge>          <MessagingMode xsi:type="xsd:string">asynchClientServer</MessagingMode>          <ReturnCertData xsi:type="xsd:boolean">1</ReturnCertData>          <ReturnRevocationData xsi:type="xsd:boolean">1</ReturnRevocationData>       </dig:MobileAuthenticate>    </soapenv:Body> </soapenv:Envelope> Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 24

Mobiil-id näitepäringud GetMobileAuthenticateStatus <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:dig="http://www.sk.ee/DigiDocService/DigiDocService_2_3.wsdl">    <soapenv:Header/>    <soapenv:Body>       <dig:GetMobileAuthenticateStatus soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">          <Sesscode xsi:type="xsd:int">668477054</Sesscode>          <WaitSignature xsi:type="xsd:boolean">true</WaitSignature>       </dig:GetMobileAuthenticateStatus>    </soapenv:Body> </soapenv:Envelope> Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 25

ÕIS-ile nõuete fikseerimise näide getTänaneTunniplaan Minu päevik (klient) ÕIS (server) getTänaneTunniplaanResponse SOAP/HTTP WSDL Tarvo Treier tarvo.treier@gmail.com Tarvo Treier tarvo.treier@gmail.com 26

REST teenused iseseisvaks uurimiseks http://www.tud.ttu.ee/material/treier/idu0075/2011/Loengud/L6_rest/L6_REST.ppt Tarvo Treier tarvo.treier@gmail.com