Web Service torilla tavataan!



Samankaltaiset tiedostot
Järjestelmäarkkitehtuuri (TK081702)

REST an idealistic model or a realistic solution?

HSMT J2EE & EJB & SOAP &...

HOJ J2EE & EJB & SOAP &...

Tech Conference Office 365 tietoturvan heikoin #TechConfFI

Tiedonsiirto- ja rajapintastandardit

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

Capacity Utilization

Harri Kaukovuo Senior Sales Consultant Technology Sales Oracle Finland Oy

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Results on the new polydrug use questions in the Finnish TDI data

Juha Peltomäki JAMK/Teknologia

Uloskirjautuminen Shibbolethissa

Laiteriippumaton UI Ajaxilla ja Javalla

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed

KAOS 2015: Integraatioiden standardointi suunnittelumallien avulla. Ilkka Pirttimaa, Chief ICT Architect, Stockmann ICT

Järjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat

REST rajapintana mobiilikehityksessä

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto

Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)

Olet vastuussa osaamisestasi

Copyright Observis Oy All rights reserved. Observis Oy Ville Kanerva, CTO Heikki Isotalus, COO Datasta tietoa

T Hypermediadokumentin laatiminen. Sisältö. Tavoitteet. Mitä on www-ohjelmointi? Arkkitehtuuri (yleisesti) Interaktiivisuuden keinot

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto

Täysautomatisoitu raportointiympäristö. Joni-Petteri Paavilainen Jani Alatalo

Pilottipalvelun esittely johtopäätökset

The OWL-S are not what they seem

X-Road ja WFS-rajapinnat, uudet APIt. Pekka Latvala , KaPA ja paikkatietoinfrastruktuurin kärkiteeman työpaja

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Sovellusarkkitehtuurit

anna minun kertoa let me tell you

Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site

Operatioanalyysi 2011, Harjoitus 4, viikko 40

Choose Finland-Helsinki Valitse Finland-Helsinki

Office 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy

Konesali ilman rajoja Kongressi A

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä

API:Hack Tournee 2014

National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007

OSI ja Protokollapino

in condition monitoring

Laitteessa tulee olla ohjelmisto tai uudempi, tarvittaessa päivitä laite

The CCR Model and Production Correspondence

Alueellinen yhteistoiminta

JWT 2017 luento 10. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari

Rich Web Applications in Server-side Java without Plug-ins or JavaScript

Integration of Finnish web services in WebLicht Presentation in Freudenstadt by Jussi Piitulainen

Statistical design. Tuomas Selander

FinFamily Installation and importing data ( ) FinFamily Asennus / Installation

Security server v6 installation requirements

Katselupalvelujen INSPIRE-yhteensopivuuden testaus

W3C ja alueellinen standardointi

Erikoiskirjastot somessa. Päivikki Karhula, johtava tietoasiantuntija Eduskunnan kirjasto

Security server v6 installation requirements

Green Growth Sessio - Millaisilla kansainvälistymismalleilla kasvumarkkinoille?

JWT 2016 luento 11. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari

Sivuston tiedotqbsupportcustom erservice.com

Varmennepalvelu - testipenkki. Kansallisen tulorekisterin perustamishanke

Power BI Tech Conference Power BI. #TechConfFI. Johdanto

Paikkatiedot palveluväylässä kehityksen tilanne Väylän varrelta - Kansallisen palveluväylän kehitystilanne -seminaari

Paikkatiedon hyödyntäminen vesiensuojeluyhdistyksissä

REST-pohjaisen web-rajapinnan kuvaaminen Case Tax Treatment Service

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

W3C ja Web-teknologiat

Hajauta yhdistäen ja yhdistä hajauttaen: Web Services

ICT:n sosiaalinen käytettävyys

Näin saat 365 päivän ajalta Freshest Data sisältöä NavionicsWeb Store nettikaupasta

Teknologinen muutos ja yliopistojen tulevaisuus. Tievie-seminaari Helsinki Antti Auer

Coolselector Asennusohje

1. Liikkuvat määreet

Tietorakenteet ja algoritmit

HAY GROUPIN PALKKATUTKIMUS

FRAME INNOVATION WORKSHOP Timo Sirviö & Sirpa Ryynänen

Käyttäjähallinta liiketoiminnan selkärankana. Ratkaisuna LDAP-hakemistot

Koodistoeditorin toteutuksen lähtökohtia: KaPA-koodistopalvelu ja REST-rajapinnat

Miksi Suomi on Suomi (Finnish Edition)

Makrojen mystinen maailma lyhyt oppimäärä

Portaaliteknologiat mahdollistavat ajattelutavan muutoksen

Laadun kehittäminen Lupa toimia eri tavalla Anssi Tuulenmäki, Yli-innovaatioaktivisti

Viimeinen rajoite (hypermedia as the engine of application state) tarkoittaa käytännössä sitä, että palvelimelta saadut vastaukset sisältävät URIt

1. SIT. The handler and dog stop with the dog sitting at heel. When the dog is sitting, the handler cues the dog to heel forward.

Uusia kokeellisia töitä opiskelijoiden tutkimustaitojen kehittämiseen

Digitalisaatio oppimisen maailmassa. Tommi Lehmusto Digital Advisor Microsoft Services

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0

Hajautettujen järjestelmien rakentaminen - Jini. Ohjelmistotuotantovälineet-seminaarin esitelmä

Jussi Klemola 3D- KEITTIÖSUUNNITTELUOHJELMAN KÄYTTÖÖNOTTO

Data protection template

812336A C++ -kielen perusteet,

Web sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin

Laskennallisen fysiikan esimerkkejä avoimesta tutkimuksesta Esa Räsänen Fysiikan laitos, Tampereen teknillinen yliopisto

Co-Design Yhteissuunnittelu

Business Opening. Arvoisa Herra Presidentti Very formal, recipient has a special title that must be used in place of their name

Tavoitteena yhdistää eri tavoin toteutetut ja eri tavoin toimivat järjestelmät; integration & interoperability.

arvostelija OSDA ja UDDI palveluhakemistoina.

Turvallisuustoimijoiden ekosysteemi Alustat - tilaaja toimittaja-vuoropuhelutilaisuus Sami Kilkkilä Liiketoimintajohtaja

Operatioanalyysi 2011, Harjoitus 3, viikko 39

Transkriptio:

Web Service torilla tavataan! Jari Putula Avarea Oy COPYRIGHT BY AVAREA 2009 1 Google Trends COPYRIGHT BY AVAREA 2009 2 1

1. Mahdollistajat 2. Web service? 3. KISS 4. Miksi? 5. Analogia 6. Ajax 7. Esimerkki Agenda COPYRIGHT BY AVAREA 2009 3 Mahdollistajat (enablers) Avoin data (http://www.theodi.org/ http://www.suomi.fi/suomifi/tyohuone/yhteiset_palvelut/avoin_data/) Teknologiat Pilvistö (Amazon WS, Microsoft Azure & co) Työkalut (Google & co) Rajapinnat Tapa tehdä Web2.0 (2004->) Some Blogit Ria Käyttäjien osallistuminen (Wikipedia, Flickr, Picasa Instagram jne.) Mashup crowdsourcing COPYRIGHT BY AVAREA 2009 4 2

Web Service Web service (www-sovelluspalvelu) on W3C:n määritelmän mukaan ohjelmistojärjestelmä, joka mahdollistaa keskenään yhteensopivan tietokoneiden välisen vuorovaikutuksen tietoverkon yli. Käytännössä termillä tarkoitetaan World Wide Web -pohjaisia ohjelmointirajapintoja: jokin palvelin tarjoaa muilla tietokoneilla toimiville ohjelmistoille palvelun HTTPn tai muun Internet-pohjaisen protokollan yli. http://fi.wikipedia.org/wiki/web_service COPYRIGHT BY AVAREA 2009 5 SOAP/REST/web services? wiki: SOAP (Simple Object Access Protocol) on tietoliikenneprotokolla jonka pääasiallisena tehtävänä on mahdollistaa proseduurien etäkutsu (RPC). Se on toimintaperiaatteeltaan samantapainen kuin muut RPCprotokollat, kuten CORBA tai RMI, mutta sen erityispiirteinä on pohjautuminen XML-kieleen ja toimiminen useiden eri protokollien yli. Sitä käytetään pääasiassa HTTP-protokollan yli. As described in a dissertation by Roy Fielding, REST is an "architectural style" that basically exploits the existing technology and protocols of the Web, including HTTP (Hypertext Transfer Protocol) and XML. REST is simpler to use than the well-known SOAP (Simple Object Access Protocol) approach, which requires writing or using a provided server program (to serve data) and a client program (to request data). COPYRIGHT BY AVAREA 2009 6 3

KISS Jobs Simple can be harder than complex: You have to work hard to get your thinking clean to make it simple. (But it s worth it in the end because once you get there, you can move mountains.) - Steve Jobs COPYRIGHT BY AVAREA 2009 7 KISS gurut KISS-periaate (engl. Keep It Short and Simple tai Keep It Short Stupid tai Keep it simple, Stupid!) on ajatusmalli, joka pyrkii yksinkertaisuuteen. Termin alkuperästä ei ole varmaa tietoa. Jo Albert Einstein muotoili sanonnan "everything should be made as simple as possible, but no simpler" (kts. myös Occamin partaveitsi ja Einsteinin hiomakivi.) COPYRIGHT BY AVAREA 2009 8 4

SOAP vs. REST. KISS? COPYRIGHT BY AVAREA 2009 9 Miksi web service Tarve ladata asynkronisesti tietoa tapahtumankäsittely datan määrä (esim. Google Earth) sovelluslogiikka Halu olla lataamatta koko web sivua (!) uudelleen COPYRIGHT BY AVAREA 2009 10 5

Tori COPYRIGHT BY AVAREA 2009 11 Juhlat COPYRIGHT BY AVAREA 2009 12 6

404 COPYRIGHT BY AVAREA 2009 13 Design arkkitehtuuri Web sovellus Middle tier Backend Web - palvelin (Proxy) DB COPYRIGHT BY AVAREA 2009 14 7

Design The Devil s in the Details XMLHttpRequest Ajax työjuhta Cross site scripting (xss); mistä data haetaan Rajapinnat (esim. facade design pattern) Abstrahoi monimutkainen palvelu yksinkertaiseksi rajapinnaksi Määrittele palvelu yksinkertaisesti getclient&id=1234&history=yes Yhtenäistä parametrien nimet siten että niillä on sama konteksti ja merkitys asiakassovelluksella ja kantaskriptissä COPYRIGHT BY AVAREA 2009 15 Javascript Ajax var root="http://xp92:8080/sasstoredprocess/do?"; function kayttajapainoinappia(){ makerequest(root + getsasohjelma() + "&asiakas=" + getasiakasname());} function makerequest(urli) { if (window.xmlhttprequest) { // Mozilla, Safari,... else if (window.activexobject) { // IE... httprequest.onreadystatechange = function() { nappaavastaus(httprequest); }; httprequest.open('get', urli, true); httprequest.send(null); } function nappaavastaus(httprequest) { if (httprequest.readystate == 4) { if (httprequest.status == 200) { var vastaus=httprequest.responsetext;... COPYRIGHT BY AVAREA 2009 16 8

Backend SAS SP %global asiakas; Data _null_; Set sashelp.class (where=(name= &asiakas )); File _webout; Put name; Run; COPYRIGHT BY AVAREA 2009 17 Design arkkitehtuuri Web sovellus Middle tier Backend Web -palvelin (Proxy) DB var root="http://xp92:8080/sasstoredprocess/do?"; function kayttajapainoinappia(){ makerequest(root + getsasohjelma() + "&asiakas=" + getasiakasname());} function makerequest(urli) { if (window.xmlhttprequest) { // Mozilla, Safari,... else if (window.activexobject) { // IE... httprequest.onreadystatechange = function() { nappaavastaus(httprequest); }; httprequest.open('get', urli, true); httprequest.send(null); } function nappaavastaus(httprequest) { if (httprequest.readystate == 4) { if (httprequest.status == 200) { var vastaus=httprequest.responsetext;... %global asiakas; Data _null_; Set sashelp.class (where=(name= &asiaka s )); File _webout; Put name; Run; COPYRIGHT BY AVAREA 2009 18 9

Kaikki sitä tekevät COPYRIGHT BY AVAREA 2009 19 Kiitos, näkemiin ja kysymyksiä Jari Putula Konsultti Avarea Oy Puustellinpolku 8 00410 Helsinki Finland www.avarea.fi Tel. +358 40 409 2062 Mail jari.putula@avarea.fi COPYRIGHT BY AVAREA 2009 20 10