HOJ J2EE & EJB & SOAP &...



Samankaltaiset tiedostot
HSMT J2EE & EJB & SOAP &...

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

Harri Kaukovuo Senior Sales Consultant Technology Sales Oracle Finland Oy

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

Sovellusarkkitehtuurit

DTEK1047: Hajautet ohjelmistojärjestelmät (HOJ)

Järjestelmäarkkitehtuuri (TK081702)

Tiedonsiirto- ja rajapintastandardit

arvostelija OSDA ja UDDI palveluhakemistoina.

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

Web-palvelukonsepti tarjoaa yhden tavan toteuttaa SOA. Tämä tapa perustuu Web-palvelustandardien käyttöön: palvelut kuvataan WSDL-kielen avulla ja

Web Service torilla tavataan!

Case TUHTI. Projektin tunnuslukuja. ! Suuri perusjärjestelmäuudistus! Työt alkoivat kesällä ! Java luokkia n. 5000

in condition monitoring

Integrointi. Ohjelmistotekniikka kevät 2003

Luento 8: XML-tuki ohjelmointikielissä & Web-palvelut

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri

Sakari Olli Tieturi OY. SOA - ajattelutapa vai teknologia

Hajauta yhdistäen ja yhdistä hajauttaen: Web Services

P e d a c o d e ohjelmointikoulutus verkossa

Päihittääkö J2EE.NETin SOAn pohjana?


Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3

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

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Ohjelmistoteknologioiden koulutus: Web-sovelluskehitys, Java Server. Infotilaisuus klo 10:00

Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

ALUEARKKITEHTUURI WEB PALVELUITA KÄYTTÄEN. Niilo Saranummi VTT Tietotekniikka

HSMT Tietokannoista. Ville Leppänen. HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32

Java Platform, Enterprise Edition (Java EE)

Integraatioratkaisu joukkoviestintäverkkojen esittämiseen paikkatietojärjestelmässä

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A Kandidaatintyö ja seminaari

Java- RekryKoulutus. Module Descriptions

Java EE ja Enterprise JavaBeans 3.0. Harri Valkonen HELSINGIN YLIOPISTO. Tietojenkäsittelytieteen laitos

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

6. Arkkitehtuurityylit

Wopti ja Tuutti - hajautetun sisällönhallinnan kehittäminen

Sisällys. Valtion tietotekniikan rajapintasuosituksia. XML:n rooleja sähköisen asioinnin tavoitearkkitehtuurissa. dbroker - asiointialusta

Tuottavuutta sovelluskehitykseen Oraclen työkaluilla: JDeveloper 10g ja HTML DB OUGF Syysseminaari

JavaRMI 1 JAVA RMI. Rinnakkaisohjelmoinnin projekti 1 osa C Tekijät: Taru Itäpelto-Hu Jaakko Nissi Mikko Ikävalko

Tuotantokoneen langaton etädiagnostiikka

HOJ RPC = Remote Procedure Call (ja Common Object Request Broker Architecture)

Osittavat arkkitehtuurityylit. Palveluihin perustuvat arkkitehtuurityylit. Erikoisarkkitehtuurityylit

Koira testissä vai Racci tuotannossa O10G/IAS10 Linuxilla

Ohjelmistoarkkitehtuurit. Kevät

Liiketoimintajärjestelmien integrointi

SOA:lle on useita, jonkin verran toisistaan poikkeavia määritelmiä. Alla niistä muutamia.

Palveluperustaiset arkkitehtuurityylit

HOJ Kertausluento. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/58

REST an idealistic model or a realistic solution?

Web-palvelu voidaan ajatella jaettavaksi kahteen erilliseen kokonaisuuteen: itse palvelun toiminnallisuuden toteuttava osa ja osa, joka mahdollistaa k

Attribuutti-kyselypalvelu

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

Web-palveluiden alusta Axis2

Tietoliikenne II (2 ov)

SOA SIG SOA Tuotetoimittajan näkökulma

Tietojärjestelmäarkkitehtuurit

Liiketoimintajärjestelmien integrointi

Tietoliikenne II (2 ov)

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

Järjestelmäarkkitehtuuri (TK081702) Lähtökohta. Integroinnin tavoitteet

VisualAge for Java-sovelluskehitin

Nääsvillen oliopäivät.net vrs Java

Semanttiset web-palvelut AS Syksy Eetu Mäkelä, Tuukka Ruotsalo

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa

OHJ-5201 Web-palveluiden toteutustekniikat. Kurssisisällöstä. Tarja Systä

XML johdanto, uusimmat standardit ja kehitys

Paikkatiedot palveluväylässä -hankkeen tilannekatsaus Lassi Lehto

Service-oriented architecture and Web services

Juhannuksena Arkkitehtuureilla YHTEISET RAKENNUSPUUT. Java/J2EE vastaan. Microsoft.Net OHJELMISTOT ARKKITEHTUURIT ESITTELYSSÄ

Integraatiotekniikan valinta - tie onnistumiseen.

Omat Lähdöt ohjelmointirajapinta: Versio 1.01

Tikon Ostolaskujenkäsittely versio SP1

Pilottipalvelun esittely johtopäätökset

The OWL-S are not what they seem

OSI ja Protokollapino

Semanttisen Webin mahdollisuudet yrityksille

B2B ja SOA. Kehittämismenetelmät ja arkkitehtuurit liiketoiminnassa, TJTSE54 kevät Ville Seppänen

HSMT Web-sovellustekniikoista

Tietokantaohjelmoinnin tekniikkoja Java-kielellä

.NET 2006 ja sen jälkeen

PORTAALIEN JA SISÄLLÖNHALLINTAJÄRJESTELMIEN INTEGROINTI PALVELUKESKEISEN ARKKITEHTUURIN AVULLA

7 Viestipohjaisten yritysjärjestelmien suunnittelumallit

Järjestelmäarkkitehtuuri (TK081702) Yritysarkkitehtuuri. Muutostarpeet

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

<Insert Picture Here> Sisällönhallintaa Web-työpöydälle

OHJ-5201 Web-palveluiden toteutustekniikat. Kurssisisällöstä. Tarja Systä

Tietojärjestelmien yhteensovittaminen turvallisesti älykkäisiin koneisiin

PLA Mobiiliohjelmointi. Mika Saari

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS Ti Kandidaatintyö ja seminaari

LIIKENNEDATA HYÖTYKÄYTTÖÖN

Järjestelmäkehitys EJB komponenttien avulla

Rajapinnat kuntajärjestelmissä #Kuntamarkkinat

ESKO-palvelun jatkokehittäminen

SIIRTYMINEN MONITASOARKKITEHTUURIIN: MICROSOFT.NET:IN TARJOAMAT MAHDOLLISUUDET

6. Arkkitehtuurityylit

Ohjelmistoarkkitehtuurit

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3

Ohjelmistoarkkitehtuurit Johannes Koskinen. Osittavat arkkitehtuurityylit

Transkriptio:

HOJ J2EE & EJB & SOAP &... Ville Leppänen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/18

Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h) 5. Soketit (3h) 6. RMI ja J2EE (2h) 7. RPC (1h) 8. WWW-sovellustekniikoista (2h) 9. Pilvialustat (4h) 10. Haja-aiheita (2h) 99. Kertausluento (2h) + 1h pelivaraa HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.2/18

Luvun rakenne J2EE Mistä se oikein koostuu? EJB = Enterprise JavaBeans Mitä? Miksi? Miten? EJB vs RMI Istuntopapu, entiteettipapu, esimerkkiä SOAP = Simple Object Access Protocol Web services, Service-Oriented Architecture (SOA).NET Remoting MPI, D-Bus,... HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.3/18

Yleistysten tie Soketit RPC: viestit proseduurien kutsuiksi alkeellisia palveluita RMI & CORBA: oliometodien kutsuja palvelu järjestyy paremmin tiedon ympärille J2EE-teknologia: pavut funktionaalisia tai tietoon liittyviä palveluita; mahdollista käyttää monella tavalla Webservices: alustariippumaton XML-pohjainen rajapinta palveluiden käyttämiseksi (SOAP & WSDL) SOA: jotain vielä yleisempää... HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.4/18

J2EE, Enterprise Edition J2EE edustaa Javan palvelinpään komponenttiteknologiaa. J2EE:llä sovellukset jaetaan neljään osaan: Asiakaspää: Java-sovellus / WWW-sivusto. Web-kerros: JSP-sivusto, servletit Liiketoimintakerros: EJB Tietokantakerros. J2EE perustuu voimakkaasti XML:n käyttöön web:n ja ohjelmien välisessä rajapinnassa. Paljon liittyviä asioita: JSP, JAX-RPC, SOAP,... HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.5/18

J2EE Sovellus 1 Sovellus 2 Itsenainen sovellus Dynaamiset HTML sivut asiakaskerros asiakas JSP sivusto web kerros J2EE palvelin EJB pavut EJB pavut liiketoiminta kerros Tietokanta Tietokanta tietokerros tietokanta palvelin HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.6/18

EJB HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.7/18

EJB-säiliön rooli Vastaa transaktioiden toteutuksesta. Turvallisuusasiat. Papujen elikaari-asiat. Toteuttaa etäpalvelun (käyttäen RMI:tä). Samanaikaisuuden hallinta (lukot, yms). Kuormantasaus.... HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.8/18

EJB: Mitä? Miksi? Miten? J2EE:ssä on mahdollista määritellä Javalla tehty palvelinpuolen EBJ-papu, joka vastaa RMI:n etäoliota. Beans 3.0: Session Bean tai Message Driven Bean. Istuntopapu: perusideana mallintaa liiketoiminta logiikkaa (palveluita; tilaton tai tilallinen). Viestipapu: reakoi (GUIn tapaan) viesteihin (Java Message API). (Entiteettipapu: mallintaa tietoa (voi olla pysyvää, voidaan tallettaa tietokantaan).) Pavut konfiguroidaan J2EE-palvelimen yhteyteen ja niitä voidaan käyttää niiden nimen perusteella (asiakassovelluksista). HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.9/18

Miten tehdä EJB-papuja (2.0)? Tehdään etärajapinta (remote interface) periyttämällä luokasta javax.ejb.ejbobject. Tehdään etäkotirajapinta (remote home interface) periyttämällä luokasta javax.ejb.ejbhome. Tehdään varsinainen papuluokka periyttämällä luokasta javax.ejb.sessionbean tai javax.ejb.entitybean. Tallettamista varten pitää mahdollisesti myös toteuttaa primääriavain (sarjoittuva). Etärajapinta, etäkotirajapinta ja varsinainen papu liitetään toisiinsa konfigurointityökalulla! HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.10/18

Miten tehdä EJB-papuja (3.0)? Ei etärajapintaa eikä etäkotijapintaa. Vaan annotoimalla tai XML-määrittelyillä. Katsotaan esimerkkejä: ks. http://www.roseindia.net/ejb/ HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.11/18

Esimerkki (EJB 2.0) Katsotaan Deitel & Deitel -kirjan esimerkkiä. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.12/18

SOAP HTTP:n päällä toimiva protokolla kutsujen tekemiseksi. Käyttää XML-koodausta (vrt. RMI, RPC ja Corba). RPC-kutsuja. SOAP = Simple Object Access Protocol (XML-pohjainen) (Protokolla RPC-kutsujen tekemiseen vastaa CORBAn IIOP:tä.) Web service:n toteuttamiseen. http://www.w3.org/2000/xp/group/ Versio 1.2 uusi ei erityisesti vain olioiden kutsumiseksi Corban tapaan yleisemmin. W3C (mutta Microsoft ollut keskeinen taustavaikuttaja). HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.13/18

Web services Tarjotaan palvelurekisteri: UDDI (Universal Description, Discovery, and Integration) Palvelut kuvataan WSDL-kielellä Asiakas kohdistaa web service-palvelimeen SOAP-kutsun, joka on palvelun kuvauksen mukainen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.14/18

Web service kuvana WSDL UDDI WSDL julkaisu haku Web services palvelu Kutsu (SOAP) Asiakas sovellus HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.15/18

Esimerkki Katsotaan Michael Maierin gradusta esimerkki WSDL-kuvauksesta + SOAP-viesteistä. Deitel&Deitel-kirjasta SOAP RPC-esimerkki. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.16/18

.NET Remoting Ei käsitellä kurssissa (katsotaan esimerkkiä kirjasta). Korvaa DCOM:n. Hyvin samanlainen toteutusrakenne kuin RMI:ssä ja Corbassa. Käsitteet ovat pitkälti samoja. Mahdollistaa olioiden etäkutsumisen. Parametrit ja tulokset: sarjallistaminen. Mahdollistaa myös tapahtumien (vrt. GUI) kuljettamisen verkon yli. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.17/18

D-Bus Esim. http://www.freedesktop.org/wiki/software/dbus Prosessien väliseen kommunikointiin; Linux-taustainen; tehokas. Qt ja GNOME käyttävät tätä (käytetty Nokian linux-kännyissäkin). Tukee mm. asynkronisuutta ja viestejä. Yleisesti viestinvälitysväyläratkaisu, joka mahdollistaa hyvin hienojakoisen (matalan tason) tavan toteuttaa viestinvälitysmekanismi. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.18/18