Integrace mobilního klienta do IS přes webovou službu

Rozměr: px
Začít zobrazení ze stránky:

Download "Integrace mobilního klienta do IS přes webovou službu"

Transkript

1 Integrace mobilního klienta do IS přes webovou službu Ondřej Berger Univerzita Hradec Králové Fakulta informatiky a managementu KIKM Hradecká 1249/6, Hradec Králové (ondrej.berger@uhk.cz) Abstrakt: Webové služby patří k populárním aplikačním komponentám pro tvorbu systémů. Následující článek se zaměřuje na srovnání a náhled na použití dvou technologií pro komunikaci s webovými službami z prostředí mobilních zařízení disponujících platformou Java pro mobilní zařízení (J2ME). Dnešní zařízení již disponují dostatečným výkonem pro zpracování XML formátu, potažmo SOAP zpráv a lze je tak využít jako klienta webové služby. Relativně snadno je pak lze integrovat do již existujícího informačního systému společnosti. V prostředí J2ME lze k tomuto účelu využít buď standardu Web Services for Mobile Devices, případně knihovny třetí strany ksoap2. Následující text je zaměřen přiblížení odlišných přístupů těchto řešení a nastiňuje základní principy použití a také srovnání řešení z pohledu náročnosti vývoje. Dále přibližuje i způsob jak řešit klienta pro REST řešení webové služby. Klíčová slova: Webové služby, J2ME, SOAP, XML, ksoap2, JSR 172, REST Abstract: Web services are popular components in information systems design. This paper will show us comparsion of two technologies from mobile devices using Java Mobile Edition. Today devices are capable of processing XML data or its application SOAP. So these devices can be used as web service clients. Their integration in existing information system is not so difficult as it used to be. For this integration can be used either Web services for Mobile Devices standard JSR 172 or third-party library ksoap2. These paper is focused on different approaches of these two technologies and shows their main usage principles. It also compares their difficulty from development point of view. Also it shows solution for REST webservice client. Keywords: Web services, J2ME, SOAP, XML, ksoap2, JSR 172, REST 1. Úvod Webové služby jsou často využívané komponenty pro umožnění vzájemné komunikace komponent informačních systémů, které navzájem spolupracují v rámci jedné organizace. Daleko častější je ovšem využití webové služby jako rozhraní, které mohou využívat jiné subjekty. Webová služba se tak stává řešením přenosu služby samotné, kterou poskytuje organizace svým klientům. Tato služba samozřejmě může být placená, zdarma či kombinací těchto možností (testovací provoz zdarma, ostrý provoz již placený apod.). V následujícím textu je pojmem webová služba míněna Webservice, tak jak ji definuje konsorcium W3C, tedy RPC model komunikace mezi aplikačními komponentami. Samostatná část je poté věnována dalšímu možnému přístupu REST. Webové služby oproti jiným metodám komunikace a výměny dat mají nespornou výhodu, kterou je otevřenost. Technologie, které mimo jiné daly i webovým službám název disponují veřejně dostupnou dokumentací a implementacemi pro různé platformy a prostředí. Patří sem zejména protokol HTTP, využívaný 114

2 Integrace mobilního klienta do IS přes webovou službu v dnešním Internetovém prostředí jako transport pro nejrozšířenější Internetovou službu WWW. Pomocí tohoto transportního protokolu se pak mezi komunikujícími prvky přenášejí samotná data. Ta jsou zapouzdřena do nějakého vhodného formátu, který umožňuje vyjádřit jednotlivé komunikační elementy jako je volaná metoda, její parametry, ošetření chybových stavů atd. Často se zde využívá protokol SOAP (Simple Object Acces Protocol), který je vystavěn nad známým formátem XML. Využívá tedy značkovací jazyk do značné míry čitelný i pro uživatele bez speciálních nástrojů a zároveň i se širokou podporou pro strojové zpracování. Z tohoto pohledu jsou tedy webové služby univerzální komponenty, které umožňují propojit různé heterogenní celky prostřednictvím jednotných, všude zastoupených technologií. V dnešní době nabývá na významu mobilita a využití mobilních technologií a zařízení pro řešení systémů. Jedním z klasických příkladů může být systém s mobilními klienty v podobě telefonů, či PDA, který využívají manažeři či obchodní zástupci při cestách za klienty. Díky mobilnímu zařízení má uživatel okamžitý přístup do zbytku systému, vidí aktuální data a může s nimi provádět žádoucí operace. Při otázce řešení takovéhoto systému je nezbytné uvažovat, jakým způsobem bude řešena komunikace mezi klientem a zbývající částí systému. Protože webové služby jsou (lépe řečeno většinou jsou, samozřejmě je možné využít i jiné technologie) vystavěny s využitím známých technologií, nabízí se možnost využití webových služeb k řešení mobilního spojení klienta a serveru a zároveň využití tohoto rozhraní pro ostatní (nemobilní) klienty. Kromě klasických webových služeb se v poslední době dostává i více prostoru řešení webové služby nikoliv RPC modelem (viz dále), ale pomocí zcela odlišné architektury, tzv. REST. Nabízí další možnosti, které je vhodné zvážit při uvažování o nasazení webových služeb jako komunikačního prostředku. Předmětem tohoto článku je představení řešení webových služeb v prostředí přenosných zařízení. Jako platforma mobilního klienta je uvažována mobilní verze platformy Java Java for Mobile Devices (J2ME či Java ME). Ta se nabízí zejména z důvodu vysoké zastoupenosti v současných příručních zařízeních a to bez ohledu na to, zda se jedná o zařízení s OS Symbian, hloupý telefon bez operačního systému, či výkonné zařízení s Windows Mobile nebo Android. Pod pojmem mobilní klient je tedy míněna aplikace, přistupující k serverové části aplikačního systému, která je spuštěna v prostředí mobilního zařízení. Je tedy schopna práce v terénu na všech místech s přístupem k datové síti. 2. Mobilní platforma Java Bez ohledu na využitý operační systém, či zařízení, je nutné uvažovat aspekty společné pro všechny vyvíjené mobilní aplikace (nejen v mobilní Javě). Přenosná zařízení (telefony, PDA, MDA) nejsou a nemohou s ohledem na svoje rozměry a primární určení, soupeřit s prostředími osobních počítačů a jejich možnostmi. Je nutné u nich počítat s několika základními omezeními: Výpočetní výkon není zdaleka takový jako u osobních počítačů a zpracování větších objemů dat se tak může stát dlouhotrvající operací. 115

3 Ondřej Berger Volná paměť je patrně nejdůležitějším aspektem celého řešení mobilních aplikací, velké paměťové struktury jako objektové hierarchie se do paměti vůbec nemusí vejít. Zobrazovací a vstupní prostředky malé displeje s nízkým rozlišením a relativně nepohodlné možnosti vstupu ať už přes klávesnici či dotykové displeje. Pokud pomineme poslední bod, protože grafické uživatelské rozhraní lze poměrně dobře přizpůsobit, jsou základními aspekty výkon a paměť, které ovlivní návrh a konečné řešení. Platforma mobilní Javy je úzkou podmnožinou standardní Javy (Java SE), tak jak je známá z prostředí osobních počítačů. V úplném základu lze Java ME rozdělit do dvou tzv. konfigurací. Každé zařízení s mobilní Javou pak disponuje jednou konfigurací, která udává základní možnosti dostupné pro aplikaci a specifikuje volnou paměť dostupnou pro každou aplikaci [1]. Určuje tak základní aplikační rozhraní (API), které může aplikace využívat. Nad konfigurací jsou vystavěné profily, které blíže definují zaměření a rozšiřují dostupné možnosti a API. Posledním prvkem jsou volitelné balíčky API, které v zařízení mohou a nemusí být přítomny a rozšiřují další možnosti aplikací například o využití rozhraní Bluetooth, GPS modulu či přístupu k adresáři s kontakty v telefonu. Java ME se tedy skládá ze dvou konfigurací: Conected Device Configuration (CDC) je zastoupena zejména ve výkonných PDA, často s prostředím Windows Mobile, a její možnosti se blíží Java SE. Conection Limited Device Configuration (CLDC) se vyskytuje ve většině ostatních zařízení (mobilních telefonů zejména) a poskytuje velice omezené základní systémové API, které je rozšířeno profilem Mobile Device Information Profile (MIDP) v současnosti ve verzích 2.0 či 2.1. Následující tabulka ukazuje některá zařízení a software, se kterými se lze setkat u mobilních telefonů. Zařízení Operační systém Java prostředí Nokia E66 Symbian S60 3rd CLDC 1.1, MIDP 2.0 HTC Touch 2 Mega Windows Mobile 6.5 CLDC 1.1, MIDP 2.0 Software Operační systém Java prostředí WebSphere Everyplace Micro Environment [2] Windows Mobile CLDC 1.1, MIDP 2.0 CDC 1.0, FP 1.0 Mysaifu JVM [3] Windows Mobile J2SE Tabulka 1: Java prostředí dostupná v mobilních zařízeních Další informace ohledně platformy Java ME a rozdělení do konfigurací, profilů a balíčků lze nalézt na oficiálních stránkách Sun Microsystems Inc. ( Možnosti a schopnosti konkrétních zařízení (podporované specifikace JSR) lze nalézt např. na [4]. Pro oblast výzkumu a tohoto 116

4 Integrace mobilního klienta do IS přes webovou službu článku je nezbytné pouze sdělení, že celá platforma (tedy obě konfigurace) je schopná komunikace s webovou službou v kombinaci HTTP+SOAP. Tato vlastnost je umožněna díky existenci volitelného balíčku JSR 172, který definuje J2ME Web Services API (WSA). Tento balíček je dostupný pro obě konfigurace. Druhým možným řešením komunikace s webovou službou je uživatelská knihovna ksoap2. Následuje stručné zhodnocení a použití těchto knihoven včetně srovnání. 2.1 JSR 172 Volitelný balíček Web Services API je definován pomocí Java Specification Request, což je soustava popisů a specifikací jednotlivých součástí celého Java prostředí [5]. Jsou zde zpracovány prakticky všechny prvky pomocí chování tak, aby byla zjištěna možnost přenosu aplikace mezi jednotlivými operačními systémy a prostředími. Do procesu specifikace jsou zapojeni různí výrobci HW, SW a samozřejmě také společnost Sun Microsystems, nyní Oracle. Ve specifikaci č. 172 je tak popsáno API volitelného balíčku pro komunikaci s webovými službami v prostředí J2ME. Celé API je založené na podmnožině JAX- RPC 1.1 (Java API for XML RPC), tedy standardu pro volání procedur (Remote Procedure Call) s využitím formátu XML. K parsování a tvorbě XML zprávy využívá podmnožinu knihovny SAX2 (Simple API for XML). Jak bylo zmíněno výše, toto JSR využívá pouze podmnožinu celého prostředí oproti osobním počítačům, resp. oproti J2SE. Z toho vyplývají určitá omezení a vlastnosti, které celý tento volitelný balíček má: Podporuje profil WS-I Basic. Umožňuje komunikovat pouze protokolem SOAP verze 1.1. Nepodporuje SOAP zprávy s přílohami. Mobilní zařízení neumožňuje vytvořit endpoint nemůže sloužit jako server webové služby, pouze jako klient. Z těchto omezení (kompletní seznam lze nalézt na [5]) vyplývá mj. to, že mobilního klienta ve smyslu aplikace běžící na mobilním zařízení, není možné vytvořit pro všechny webové služby, ale pouze pro ty, které splňují tyto požadavky. Což je problematické pro tvorbu klienta k serveru, který není pod kontrolou vývojářů, nicméně tato situace příliš často nenastává. U vývoje interního systému je možné rozhraní uzpůsobit tak, aby vyhovovalo. Celé schéma fungování aplikace s využitím JSR 172 je uvedeno na následujícím obrázku. 117

5 Ondřej Berger Obrázek 1: Schéma použití webových služeb na J2ME (převzato z [3]) Aplikace mobilního klienta využívá JSR 172 API, konkrétně vygenerovanou stub třídu. Tento zástupný objekt poskytuje rozhraní pro komunikaci se serverem a deleguje svá volání na implementaci webových služeb, kterou poskytuje mobilní zařízení prostřednictvím volitelného balíčku. Komunikace pak probíhá skrze bezdrátovou síť (GSM, Wi-Fi, 3G,...) a Internet k poskytovateli služby (Service producer na obrázku) Použití WSA Vývoj takovéto aplikace je relativně rychlý, pokud definované rozhraní služby splňuje všechny požadavky kladené WSA. Jak vyplývá z profilu WS-I Basics [5], je webová služba popsána tzv. WSDL dokumentem, který ve formátu XML popisuje celé rozhraní, jeho procedury s parametry a návratovými hodnotami. Tato metadata umožňují generování klientské části (přesněji části zdrojového kódu). To platí jak v případě standardní Javy, tak i J2ME. Vznikne tak výše zmíněná stub třída a pomocné třídy odpovídající jednotlivým XML elementům ve WSDL. K tvorbě stubu lze dobře využít nástrojů z vývojářské sady Wireless Toolkit (WTK). V něm je možné stub třídu vygenerovat pomocí WSDL dokumentu. Z tohoto pohledu možnosti generování se využití webových služeb jeví jako velice zajímavá možnost. V ideálním případě postačuje napsat serverovou logiku, k ní vygenerovat webovou službu (včetně WSDL), a klientskou logiku vyžadující komunikaci také vygenerovat pomocí WTK. To samozřejmě je možné, nicméně to přináší dvě základní oblasti, které je nutné vyřešit, zejména z pohledu technologického. První oblast se týká serveru webové služby, resp. vytvoření rozhraní tak, aby splňovalo omezené podmínky dané WSA. Ze zkušenosti lze říci, že toto omezení je relativně malé. Tvorba webové služby může probíhat i opačným způsobem, než-li je generování rozhraní z existujícího Java kódu (případně jiné platformy či jazyka). Je tedy možné sepsat WSDL dokument splňující WSA požadavky a na jeho základě pak vytvořit logiku serveru. Případně oba postupy vhodně kombinovat a vyzkoušet při implementaci. Tento přístup samozřejmě není možný v případě, kdy vývojáři nemají přístup k serveru služby. Možným řešením této situace je vytvoření prostředníka, serveru, který na jedné straně komunikuje s originální webovou 118

6 Integrace mobilního klienta do IS přes webovou službu službou a nabízí přitom pro mobilní klienty rozhraní se stejnou (či maximálně podobnou) funkcionalitou, ovšem podléhající a splňující WSA požadavky. Otázka či oblast druhá je závažnější a týká se výběru koncových zařízení. Tedy klientů služby. Ze specifikace JSR 172 vyplývá, že se jedná o volitelný balíček. To v konečném důsledku znamená, že v konečném zařízení může, ale nemusí být přítomen. Z pohledu technologie, či vývoje, to je tedy skutečnost, že neobsahuje potřebné Java třídy a balíky. Na Internetu lze sice nalézt jakýsi návod [6], jak tento balíček doplnit i do zařízení, kde není přítomen, ovšem ten nemůže fungovat již ze samotné podstaty platformy ksoap2 Při integraci klientů pro přenosná zařízení typu mobilních telefonů, která ovšem neobsahují zmíněný volitelný balíček, nelze využít JSR 172. Jedná se především o jednodušší mobilní telefony u kterých se například běžně nepředpokládá jejich náročnější využití, ovšem z nějakého důvodu nasazeny být musí např. neobsahují fotoaparát, který může být v některých organizacích zakázán z důvodů špionáže. Dalším důvodem může být skutečnost, že webová služba pracuje s protokolem SOAP verze 1.2 a nelze vytvořit výše zmíněný překladový server. V těchto situacích je možné uvažovat nad nasazením knihovny ksoap2 [7]. Tato knihovna je uživatelská a její využití je tak možné ve všech zařízeních (i těch, které nedisponují JSR 172). Ovšem daní za možnost využívat ji prakticky ve všech zařízeních je v praxi poněkud náročnější vývoj. Tato knihovna je daleko více nízkoúrovňová oproti JSR 172 a vyžaduje vyřešit přechod mezi XML zprávou ve formátu SOAP a Java objekty. Je také nezbytné řešit režijní záležitosti ohledně správy spojení. Již tento stručný popis naznačuje větší pracnost oproti JSR 172, kde jedinou prací pro komunikaci se serverem bylo zavolání příslušné metody na vygenerovaném zástupném objektu. Tato třída společně s balíčkem zajišťuje všechny potřebné úkony Použití ksoap2 Obecný postup při využívání knihovny ksoap2 je následující: 1. Vytvoření potřebných komunikačních objektů v aplikaci a předání převodníku. 2. Předání ksoap2 objektů vytvořených z aplikačních objektů knihovně ksoap2. 3. Volání serveru knihovnou ksoap2. 1 JSR 172 obsahuje i třídy, které doplňují základní java balíky java a java.lang. Do těchto balíků z bezpečnostních důvodů nemohou aplikace žádné třídy umisťovat. Pokud tedy třídy v těchto (a některých dalších) balíčcích neobsahuje přímo Java Virtual Machnie v době spouštění aplikace, nemohou být doplňeny samotnou aplikací a dojde k bezpečnostní vyjímce.v prostředí J2SE lze toto obejít ručním zásahem do instalovaného Java prostředí, to je ovšem nereálné u mobilního zařízení. Navíc v případě, že volitelný balíček komunikuje např. přes Bluetooth a neobsahuje příslušný hardware, je takovýto postup nesmyslný. 119

7 Ondřej Berger 4. Přijetí příchozí zprávy. 5. Předání ksoap2 objektů převodníku. 6. Vrácení aplikačních objektů. Obrázek 2: Obecné schéma použití knihovny ksoap2. Zdaleka nejdůležitější v tomto postupu je převedení, či vytvoření, objektů a tříd, které vnitřní mechanismus knihovny dokáže zpracovat a převést do podoby odchozí SOAP zprávy. (Případně pak zpětně naparsovat z XML do Java objektů.) Jedná se tedy o druhý element zleva ve výše uvedeném schématu. Tomuto procesu se bude i dále ve větší míře věnovat následující text. Pro přenosy jednodušších struktur či primitivních datových typů je možné využívat třídy dostupné přímo z knihovny. Objekty tříd SoapObject a SoapPrimitive pokrývají základní požadavky pro přenosy řetězců, čísel či jednodušších objektových struktur. Jednou z cest k řešení aplikace postavené nad ksoap2 je proto převod doménového modelu do soustavy objektů tříd SoapObject (SoapPrimitive). Zásadní výhodou tohoto postupu je neinvazivnost do stávajícího kódu. Lze aplikovat konverzní pomocné objekty, které na vstupu dostanou doménový objekt a na výstupu vrátí jeho reprezentaci dle ksoap2. Zdaleka zásadní nevýhodou tohoto přístupu je fakt, že neumožňuje přenášet seznam objektů (v podobě pole, či objektu Vector). V závislosti na stylu WSDL dokumentu se seznam Java objektů (pole) vrací jako sada XML elementů se stejným názvem. Standardní ksoap2 parser tyto objekty přepisuje do jednoho atributu Java třídy. Výsledkem je skutečnost, že z původně zaslaného pole je dostupný pouze poslední prvek resp. prvek, který byl v XML zpracován jako poslední. Daleko komplexnější a mocnější použití knihovny tedy nabízí využití rozhraní KvmSerializable, které ksoap2 poskytuje. Toto rozhraní je základním kamenem celé knihovny (je implementováno i výše zmíněnými třídami SoapObject a SoapPrimitive). Poskytuje možnost ručně psané atributové reflexe, tedy možnost přistoupení (získání i zapsání) k hodnotám atributů tříd bez znalosti jejich jmen. K tomuto využívá číselné indexy a příslušné metody zmíněného rozhraní. Díky tomuto přístupu lze řešit i přenos polí objektů, jak popisuje jeden z mála dostupných zdrojů o ksoap2([8]). Princip spočívá ve vytvoření vlastní implementace KvmSerializable, která u příslušné vlastnosti objektu bude naparsované objekty ukládat do pole či listu. Problém s přenosem polí a seznamů v SOAP je v tom, že prvky seznamu se přenášejí jako XML elementy se stejným názvem. Standardně tak parser nahrazuje příslušný atribut Java třídy vždy novou a novou hodnotou místo toho, aby je ukládal. Tomu lze zabránit právě vlastní třídou a vytvořením příslušného mechanismu pro ukládání do pole či seznamu. Knihovna ksoap2 poskytuje poměrně široké možnosti při komunikaci s webovými službami, na rozdíl od JSR 172 se neomezuje pouze na SOAP 1.1, je lépe přenositelná apod. Ovšem základním nedostatků je skutečnost, že je minimálně 120

8 Integrace mobilního klienta do IS přes webovou službu dokumentovaná a žádá i komplexnější odladění při převodu mezi Javou a XML. Je nezbytné se orientovat ve WSDL, znát přesná jména XML elementů, jejich jmenné prostory, vzájemné vztahy apod. 3. REST V souvislosti s knihovnami JSR 172 a ksoap2 je nezbytné zmínit i jednu z metod, která je mezi webové služby řazena, nicméně se jedná o zcela jiný architektonický styl celé aplikace. Tímto přístupem je tzv. REST neboli Representational State Transfer. Klasické webové služby oproti tomu stojí na principu vzdáleného volání procedur (RPC). Návrh RESTu popsal ve své disertační práci ([9]) Roy Fielding, mj. jeden ze spoluautorů protokolu HTTP. Princip RESTu je ve své podstatě jednoduchý. Celá architektura stojí na čtyřech základních pojmech se kterými operuje. Nejzákladnější z celého je zdroj. Zdrojem je abstrakce, která zapouzdřuje stav, nebo chování systému. Příkladem může být kniha v knihovně, student ve škole nebo vlak v systému jízdních řádů. Každý zdroj je možné vyjádřit nějaké reprezentaci. Údaje o knize mohou být ve formátu XML, textovém souboru, či obrázku. Důležité je tady zmínit, že každý zdroj může mít několik různých reprezentací, které ale v důsledku představují stále stejný zdroj. Tuto skutečnost lze dobře využít v prostředí přenosných přístrojů (viz dále). Každý zdroj také musí (mimo reprezentací) mít jednoznačně určenou adresu, která jej umožní lokalizovat v rámci systému. Typickým příkladem, který je i v praxi hojně využíván, je adresa URL. Posledním prvkem architektury REST je operace. Ta vyjadřuje, co lze provádět se zdrojem. Na rozdíl od klasického RPC, kde operace představují jednotlivé metody na rozhraní služby, zde jsou možné pouze maximálně 4 základní operace s každým zdrojem. Jedná se o tzv. CRUD operace, známé z prostředí relačních databází. Zdroj lze vytvořit, změnit, smazat a samozřejmě získat. K provádění těchto operací slouží různé reprezentace zdroje. Tedy změna zdroje s obrázkovou reprezentací způsobí pouze změnu obrázku, nikoliv dat apod. 3.1 REST v J2ME Velice často se REST webová služba staví nad protokolem HTTP. Ten slouží jako transportní prvek, který již obsahuje dva zásadní prvky architektury. Jednak URL adresu, a také metody (GET, PUT,...), které lze navázat na operace. Jednoduchým příkladem může být knihovna. Její zdroj seznam knih, adresovaný jako s využitím metody GET vrátí seznam všech dostupných knih. Pomocí metody POST na stejném zdroji lze novou knihu přidat tak, že její reprezentace bude obsažena v těle požadavku. Získat jednotlivou knihu lze pomocí operace GET na zdroji Záleží na serveru (či požadavku klienta) v jaké podobě (reprezentaci) požadovanou knihu vrátí. Tuto skutečnost lze popsat například definicí hlaviček protokolu Accept-Type a Conent-type. Obdobným způsobem jako získání lze zdroj i smazat na stejné adrese, ovšem využitím HTTP metody DELETE, která může představovat operaci smazání. 121

9 Ondřej Berger Zejména v podobě různých reprezentací zdrojů pak architektura přináší rozsáhlé možnosti do mobilních zařízení. Pro všechny klienty (mobilní i nemobilní) lze vystavit jednotné rozhraní, ovšem v závislosti na identifikaci klienta (hlavičkou požadavku, parametrem adresy), může server stejný zdroj vyjádřit různými způsoby. Například v XML formátu pro běžné PC a v podobě neformátovaného textu pro mobilní zařízení. Stejně tak obrázek může být pro přenosné zařízení s malým displejem zmenšen aby se celý vešel bez nutnosti rolování atd. V prostředí Java ME existují základní prostředky pro práci s HTTP protokolem, který je častou volbou pro řešení RESTu. Bez nutnosti vyvíjení dalších aplikačních prvků je možné ihned zdroj adresovat a posílat a číst jeho reprezentaci. Jediným nutným řešením je převod doménové reprezentace zdroje (Java objektu) do vhodné reprezentace (XML, JSON, text). Není vyžadována žádná doplňující knihovna, či volitelný balíček API. Nicméně v aktuálně nejrozšířenější mobilní Javě (CLDC 1.1 a MIDP 2.0) jsou omezeny metody volání HTTP protokolu pouze na metody GET, POST a CONNECT. Další (PUT, DELETE) je nutné doprogramovat ručně využitím socketového spojení, vypsáním hlavičky HTTP požadavku do výstupu a čtením odpovědi. Jedná se sice o nepohodlnou záležitost, ale řešitelnou. Nejvíce pracnou částí celé aplikace tak bude převod mezi doménovým modelem Java objektů a vhodnou reprezentací zdrojů. Dostačujícím pro většinu použití může být například JSON notace, která umožňuje reprezentovat i složité datové struktury úsporněji než například XML [10]. 4. Srovnání přístupů Všechna řešení, která jsou dostupná na J2ME platformě umožňují rozšíření klientů webových služeb i na mobilní zařízení. Při srovnání a implementaci zkušební aplikace všech přístupů se ukazují jejich výhody a nevýhody. Nyní shrnu pouze ty dle mého názoru nejdůležitější. Ve prospěch JSR 172 hovoří rychlost vývoje a snadnost použití. Celý komunikační kód lze vygenerovat do podoby běžné Java třídy, která se použije v aplikaci. Nevýhody balíčku WSA jsou dvě hlavní. Za prvé služba je omezena pouze na SOAP protokol verze 1.1, a nepodporuje jeho novější specifikaci 1.2. Zde se otvírá prostor pro další průzkum ohledně zastoupení jednotlivých verzí protokolu mezi aktuálními webovými službami. Druhým, zásadnějším omezením je nepřenositelnost řešení mezi různými zařízeními, pokud nemají WSA již od výrobce implementován. V případě nasazení uvnitř větší společnosti nejde o zásadní problém. Častým benefitem bývá vybavení zaměstnance mobilním telefonem a výběr lze přizpůsobit požadavkům. V případě jednoho typu zařízení také odpadají i další komplikace při vývoji mobilní aplikace a to zejména tvorba a ladění uživatelského rozhraní pro různá zařízení a různé displeje apod. Naproti výše zmíněnému je knihovna ksoap2 přenosná mezi všemi zařízeními s mobilní Javou, pokud podporují profil alespoň MIDP 2.0. To zahrnuje většinu všech stávajících zařízení a je tak možné aplikaci nasadit i v heterogenním prostředí různých přístrojů. Daní za tuto přenositelnost je pak komplikovanější vývoj, spočívající v nízkoúrovňovějším přístupu k webové službě v podobě přímé tvorby XML zpráv a jejich zpracování. 122

10 Integrace mobilního klienta do IS přes webovou službu Zcela na opačné straně stojí architektonický styl REST, který na rozdíl od klasických webových služeb nevyužívá model RPC, ale jde zcela jiným směrem. Tato odlišnost má za následek dvě oblasti, které mohou bránit jeho většímu rozšíření, alespoň prozatím. První skutečností je, že v případě nejčastější varianty architektury s využitím protokolu HTTP je nutné vyvinout vlastní implementaci nedostupných metod. To ovšem přebíjí skutečnost, že při vhodném návrhu stačí tento krok provést pouze jednou a pak dále využívat již jednou hotové řešení. Zpracovat tak je nezbytné pouze převod mezi reprezentací zdrojů a Java objekty. Druhým aspektem je zcela odlišný přístup k návrhu celé aplikace, a to nejen klienta ale i serveru je nezbytné myslet ve zdrojích, což je sice předpoklad objektového návrhu, ovšem stále častým problémem je návrh a implementace tzv. anemického modelu. Aplikační logika v něm není rozdělena mezi jednotlivé objekty, ale z větší části se soustřeďuje do tzv. manager či service objektů, které zajišťují její vykonání (viz I přes tyto problematické oblasti je ovšem REST architektura dobrou volbou pro nasazení při řešení mobilního klienta. Zejména její možnost různých reprezentací, která umožňuje volit vhodné reprezentace jednoho zdroje v závislosti na klientu přináší úsporu prostředků a času při vývoji komunikačního rozhraní. Zároveň si tento přístup na klientovi vystačí pouze se základním API a nevyžaduje žádné dodatečné knihovny. Tím se obrovským způsobem zvyšuje přenositelnost celé aplikace mezi různými zařízeními. 5. Závěr V článku byly nastíněny jednotlivé metody, které lze v prostředí Java ME použít pro vytvoření klienta IS s využitím webové služby. Byly zmíněny tři nejznámější přístupy k webové službě v mobilním zařízení. Článek poukazuje na jednotlivé, zejména technologické aspekty, které provázejí nasazení jednotlivých přístupů. Každé řešení má své výhody i nevýhody, které je nezbytné zvážit. JSR 172 umožňuje v ideálním případě klienta celého vygenerovat, ovšem API není vždy dostupné v mobilním zařízení. Použít knihovnu ksoap2 je pracnější použít díky minimální dokumentaci i nízkoúrovňovějšímu přístupu a vazbě mezi XML a Javou. Ovšem je možné jej využít kdekoliv, protože knihovna je přenosná. REST implementace nad HTTP protokolem sice naráží na nutnost vyjádření reprezentace a doplnění neimplementovaných metod HTTP spojení, ovšem její nespornou výhodou je nezávislost na dalších knihovnách a úspora zdrojů při tvorbě serverového rozhraní, které mohou využívat různí klienti. Je proto otázkou vždy zvážit, které řešení je v dané situaci nejvhodnější s ohledem na plánovaný čas, zdroje. Případně zda úplně webové služby neopustit a podívat se po jiném, alternativním řešení. Zdroje [1] Topley, Kim. J2ME in a nutshell. [s.l.] : O'Reilly, s. March ISBN X. 123

11 Ondřej Berger [2] IBM. IBM [online] [cit ]. WebSphere Everyplace Micro Environment. Dostupné z WWW: < 01.ibm.com/software/wireless/weme/>. [3] freebeans. A free Java Virtual Machine for Windows Mobile [online]. Mar. 05, 2010 [cit ]. Mysaifu JVM. Dostupné z WWW: < [4] JAVAVERFIED.COM. Table of supported devices [online] [cit ]. Dostupný z WWW: < [5] ORTIZ, C. Enrique. Introduction to J2ME Web Services [online] [cit ]. Dostupný z WWW: < [6] Embedded interaction [online] [cit ]. Using JSR-172 on any J2ME-enabled mobile phone. Dostupné z WWW: < [7] KSOAP2 [online]. 2006, [cit ]. Dostupný z WWW: < [8] KSOAP2 WIKI [online] , Oct 1, 2008 [cit ]. Dostupný z WWW: < [9] Fielding, Roy. Architectural Styles and the Design of Network-based Software Architectures. [s.l.], s. Dizertační práce. Dostupný z WWW: < [10] Dobric, Damir. Developers.de [online]. Dec [cit ]. Performance Comparison: SOAP vs. JSON (WCF-Implementation). Dostupné z WWW: < performance-comparison-soap-vs-json-wcf-implementation.aspx>. 124

Úvod do Web Services

Úvod do Web Services Úvod do Web Services Základy webových služeb a jejich implementace na platformě OS/2 Jarda Kačer jarda@kacer.biz Český Warpstock 2008 Brno, 20.-21.9.2008 Co je to webová služba? Část business logiky přístupná

Více

1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services

1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services 13. Webové služby. K čemu slouží? Popis a vyhledávání služeb. Co je a k čemu slouží orchestrace a choreografie služeb. Technologie pro implementaci služeb 1. Webové služby. K čemu slouží? Definice WS -

Více

RESTful API TAMZ 1. Cvičení 11

RESTful API TAMZ 1. Cvičení 11 RESTful API TAMZ 1 Cvičení 11 REST Architektura rozhraní navržená pro distribuované prostředí Pojem REST byl představen v roce 2000 v disertační práci Roye Fieldinga, zkratka z Representional State Transfer

Více

Komponentový návrh SW

Komponentový návrh SW Komponentový návrh SW Komponentový návrh SW Komponenty jsou kompletně specifikované pomocí interface Jejich funkčnost je nezávislá na programovacím jazyku a mohou být integrované do toho samého systému

Více

Požadavky pro výběrová řízení TerraBus ESB/G2x

Požadavky pro výběrová řízení TerraBus ESB/G2x Dokument: Převod dat TerraBus ESB/G2x Požadavky pro výběrová řízení TerraBus ESB/G2x Obsah 1. Účel dokumentu... 2 2. Použité termíny a zkratky... 2 3. Požadavky... 3 Účel dokumentu Účelem tohoto dokumentu

Více

TECHNICKÁ SPECIFIKACE VEŘEJNÉ ZAKÁZKY

TECHNICKÁ SPECIFIKACE VEŘEJNÉ ZAKÁZKY Příloha č. 3 k č.j. MV-159754-3/VZ-2013 Počet listů: 7 TECHNICKÁ SPECIFIKACE VEŘEJNÉ ZAKÁZKY Nové funkcionality Czech POINT 2012 Popis rozhraní egon Service Bus Centrální Místo Služeb 2.0 (dále jen CMS

Více

TÉMATICKÝ OKRUH Softwarové inženýrství

TÉMATICKÝ OKRUH Softwarové inženýrství TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 25. Otázka : Komponentní technologie - základní pojmy a principy, metody specifikace komponent. Obsah : 1. Základní pojmy 1.1 Komponenta Komponenta

Více

Vzdálený přístup k počítačům

Vzdálený přístup k počítačům Vzdálený přístup k počítačům jedna z nejstarších služeb vzdálený přístup k sálovým počítačům nejprve vzdálené terminály později terminálová emulace jako jedna ze služeb počítačové sítě současnost využíváno

Více

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o.

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o. X33EJA Web Services Martin Ptáček, KOMIX s.r.o. ptacek@komix.cz Copyright 2007 KOMIX Copyright s.r.o. 2007 KOMIX s.r.o. 1. Obsah Historie Co jsou Web Services? Co je to SOA? JAX-WS (Java API for XML Web

Více

Common Object Request Broker Architecture

Common Object Request Broker Architecture Common Object Request Broker Architecture Tvorba aplikací, jejichž komponenty budou komunikovat přes počítačovou síť Programátor jedné aplikace volá metody vzdálených objektů podobně jako u sebe lokální

Více

Michal Krátký, Miroslav Beneš

Michal Krátký, Miroslav Beneš Tvorba informačních systémů 1/20 Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních

Více

Technologie Java. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/

Technologie Java. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Technologie Java Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Trocha historie Java vznikla v roce 1995 jak minimalistický programovací jazyk (211 tříd). Syntaxe vycházela z C/C++. V

Více

Web Services na SOAP

Web Services na SOAP Web Services Používají HTTP Existují dvě varianty: Služby postavené na protokolu SOAP Java standard pro vytváření : JAX-WS RESTfull služby Java standard pro vytváření : JAX-RS Web Services na SOAP Žádost

Více

Tvorba informačních systémů

Tvorba informačních systémů 9. Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006-2008 Michal Krátký, Miroslav Beneš Tvorba

Více

Modelování webových služeb v UML

Modelování webových služeb v UML Modelování webových služeb v UML Jaromír Šveřepa LBMS, s.r.o. Abstrakt: Tento příspěvek se zaměřuje na praktický postup pro identifikaci potřeby webové služby, modelování způsobu jejího použití, popřípadě

Více

Softwarové komponenty a Internet

Softwarové komponenty a Internet Softwarové komponenty a Internet Doc. Dr. Ing. Miroslav Beneš Katedra informatiky FEI VŠB-TU Ostrava Miroslav.Benes@vsb.cz Obsah přednášky Motivace Vývoj přístupů k tvorbě programů Definice komponenty

Více

MST - sběr dat pomocí mobilních terminálů on-line/off-line

MST - sběr dat pomocí mobilních terminálů on-line/off-line MST - sběr dat pomocí mobilních terminálů on-line/off-line Stručný přehled název: MST, software pro sběr dat mobilními terminály ve skladu (příjem, výdej, inventura) autor aplikace: FASK, spol. s r.o.,

Více

SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL

SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL SYSTEM FOR CONFIGURATION OF COMMUNICATION TERMINALS AND VISUALIZATION OF STATE INFORMATION FROM RAIL VEHICLES

Více

RESTful web service v Javě

RESTful web service v Javě Mendelova univerzita v Brně Provozně ekonomická fakulta RESTful web service v Javě Literární rešerše práce Vedoucí práce: Ing. Jan Turčínek, Ph.D. Pavel Savrov Brno 2016 OBSAH 2 Obsah 1 Protokoly implementaci

Více

java remote method invocation Kateřina Fricková, Matouš Jandek

java remote method invocation Kateřina Fricková, Matouš Jandek java remote method invocation Kateřina Fricková, Matouš Jandek Distribuovaný systém počítačový systém, ve kterém jsou jednotlivé komponenty propojeny počítačovou síťí komponenty systému sdílí cíl, kterého

Více

Nové vývojové nástroje i5/os Rational Developer for System i V7.1

Nové vývojové nástroje i5/os Rational Developer for System i V7.1 Nové vývojové nástroje i5/os Rational Developer for System i V7.1 Aleš Petr, IBM ČR Konference COMMON 18. 20. května 2008 ales_petr@cz.ibm.com Agenda Rational Application Developer for System i V7.1 Novinky

Více

Business Intelligence

Business Intelligence Business Intelligence Josef Mlnařík ISSS Hradec Králové 7.4.2008 Obsah Co je Oracle Business Intelligence? Definice, Od dat k informacím, Nástroj pro operativní řízení, Integrace informací, Jednotná platforma

Více

Referenční rozhraní. Jiří Kosek. Ministerstvo informatiky ČR. ISSS 25. března 2003

Referenční rozhraní. Jiří Kosek. Ministerstvo informatiky ČR. ISSS 25. března 2003 Jiří Kosek Ministerstvo informatiky ČR ISSS 25. března 2003 Požadavky na RR!zákon 365/2000 Sb.!RR je souhrnem opatření, která vytvářejí jednotné integrační prostředí informačních systémů veřejné správy!rr

Více

Vývoj SW pro mobilní zařízení s ios. Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie, 6.12.2012

Vývoj SW pro mobilní zařízení s ios. Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie, 6.12.2012 Vývoj SW pro mobilní zařízení s ios Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie, 6.12.2012 Perspektiva 3 roky zkušeností s vývojem aplikací pro ios 1 rok vývoj pro Android desítky aplikací Obsah

Více

Implementace systémů HIPS: historie a současnost. Martin Dráb

Implementace systémů HIPS: historie a současnost. Martin Dráb Implementace systémů HIPS: historie a současnost Martin Dráb martin.drab@secit.sk HIPS: základní definice Majoritně používané operační systémy disponují bezpečnostními modely, které dovolují jednotlivým

Více

EMBARCADERO TECHNOLOGIES. Jak na BYOD chytře? Možnosti zapojování různých mobilních zařízení do podnikových informačních systémů.

EMBARCADERO TECHNOLOGIES. Jak na BYOD chytře? Možnosti zapojování různých mobilních zařízení do podnikových informačních systémů. Jak na BYOD chytře? Možnosti zapojování různých mobilních zařízení do podnikových informačních systémů. Trendy a móda EMBARCADERO TECHNOLOGIES Popularita a prodej mobilních zařízení roste Skoro každý má

Více

Komponentní technologie

Komponentní technologie Komponentní technologie doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Motivace Aplikace v IT Vývoj přístupů

Více

Počítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací.

Počítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací. Přednáška 5 1. Stručný přehled vývoje html H T m l (HTML...XML... html5), (Web API, JSON, REST,AJAX) 2. Některé související IT IP adresa, doménová adresa, name servery JavaScritp, Jquery, Angular PHP vs

Více

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk

ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk Anotace: Příspěvek se zabývá rozvojem informačních a komunikačních technologií se zaměřením na trendy technického a programového

Více

Úvod Arachne je projekt, který si bere za cíl poskýtovat informace prostřednictvým mobilních telefonů studentům týkající se jejich studia na Západočeské Univerzitě v Plzni. Má snahu takto částečně paralelizovat

Více

Software programové vybavení. 1. část

Software programové vybavení. 1. část Software programové vybavení 1. část Software Vše co není HW je SW = pojem se někdy vztahuje jak na programy, tak na data Oživuje hardware (zdaleka ne jen počítače) Je-li přítomen procesor, musí být i

Více

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. 2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. GEOVAP, spol. s r. o. Čechovo nábřeží 1790 530 03 Pardubice Česká republika +420 466 024 618 http://www.geovap.cz V dokumentu použité názvy programových

Více

PRODEJ Prodej je pochopitelně základní funkcí pokladního systému. Systému MERCATOR umožňuje prodej realizovat ve 3 režimech:

PRODEJ Prodej je pochopitelně základní funkcí pokladního systému. Systému MERCATOR umožňuje prodej realizovat ve 3 režimech: MERCATOR Moderní pokladní systém od společnosti SICONET a.s. Co je MERCATOR MERCATOR je PC pokladní systém určený především maloobchodním a velkoobchodním prodejnám společností, jejichž podnikovým systémem

Více

TÉMATICKÝ OKRUH Softwarové inženýrství

TÉMATICKÝ OKRUH Softwarové inženýrství TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 24. Otázka : Implementační fáze. Postupy při specifikaci organizace softwarových komponent pomocí UML. Mapování modelů na struktury programovacího

Více

SOAP & REST služby. Rozdíly, architektury, použití

SOAP & REST služby. Rozdíly, architektury, použití SOAP & REST služby Rozdíly, architektury, použití Obsah Srovnání SOAP a REST služeb Service Oriented Architecture Microservice Architecture Příklady použití Nástroje pro vývoj SOAP a REST služeb (v Java)

Více

Přístup do IS z mobilních zařízení

Přístup do IS z mobilních zařízení Přístup do IS z mobilních zařízení Tomáš Tureček Katedra informatiky, FEI, VŠB Technická univerzita Ostrava 17. listopadu 15, 708 33, Ostrava-Poruba Tomas.Turecek@vsb.cz Abstrakt. Článek se zabývá problematikou

Více

Publikování map na webu - WMS

Publikování map na webu - WMS Semestrální práce z předmětu Kartografická polygrafie a reprografie Publikování map na webu - WMS Autor: Ondřej Dohnal, Martina Černohorská Editor: Filip Dvořáček Praha, duben 2010 Katedra mapování a kartografie

Více

MBI - technologická realizace modelu

MBI - technologická realizace modelu MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,

Více

Microsoft SharePoint Portal Server 2003. Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR

Microsoft SharePoint Portal Server 2003. Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR Microsoft SharePoint Portal Server 2003 Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR Přehled Země: Česká republika Odvětví: Velkoobchod Profil zákazníka

Více

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML Obsah přednášky Webové služby a XML Miroslav Beneš Co jsou to webové služby Architektura webových služeb SOAP SOAP a Java SOAP a PHP SOAP a C# Webové služby a XML 2 Co jsou to webové služby rozhraní k

Více

EXTRAKT z české technické normy

EXTRAKT z české technické normy EXTRAKT z české technické normy Extrakt nenahrazuje samotnou technickou normu, je pouze informativním 35.240.60 materiálem o normě. Komunikační infrastruktura pro pozemní mobilní zařízení (CALM) Architektura

Více

PŘÍLOHA C Požadavky na Dokumentaci

PŘÍLOHA C Požadavky na Dokumentaci PŘÍLOHA C Požadavky na Dokumentaci Příloha C Požadavky na Dokumentaci Stránka 1 z 5 1. Obecné požadavky Dodavatel dokumentaci zpracuje a bude dokumentaci v celém rozsahu průběžně aktualizovat při každé

Více

TSM for Virtual Environments Data Protection for VMware v6.3. Ondřej Bláha CEE+R Tivoli Storage Team Leader. TSM architektura. 2012 IBM Corporation

TSM for Virtual Environments Data Protection for VMware v6.3. Ondřej Bláha CEE+R Tivoli Storage Team Leader. TSM architektura. 2012 IBM Corporation TSM for Virtual Environments Data Protection for VMware v6.3 Ondřej Bláha CEE+R Tivoli Storage Team Leader TSM architektura 2012 IBM Corporation Tradiční zálohování a obnova dat ze strany virtuálního stroje

Více

ZAŘÍZENÍ PRO VZDÁLENÝ SBĚR A PŘENOS DAT FIRMWARE

ZAŘÍZENÍ PRO VZDÁLENÝ SBĚR A PŘENOS DAT FIRMWARE 2011 Technická univerzita v Liberci Ing. Přemysl Svoboda ZAŘÍZENÍ PRO VZDÁLENÝ SBĚR A PŘENOS DAT FIRMWARE V Liberci dne 16. 12. 2011 Obsah Obsah... 1 Úvod... 2 Funkce zařízení... 3 Režim sběru dat s jejich

Více

Obsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13

Obsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13 Obsah Předmluva 11 O této knize 13 Konvence........................................................13 Inovace prostřednictvím otevřenosti 15 Ekosystém Symbianu.............................................16

Více

Pokročilé Webové služby a Caché security. Š. Havlíček

Pokročilé Webové služby a Caché security. Š. Havlíček Pokročilé Webové služby a Caché security Š. Havlíček Webové služby co se tím míní? Webová služba metoda komunikace mezi dvěma elektronickými zařízeními přes internet Typicky jsou pomocí rozhraní přístupné

Více

Znalostní systém nad ontologií ve formátu Topic Maps

Znalostní systém nad ontologií ve formátu Topic Maps Znalostní systém nad ontologií ve formátu Topic Maps Ladislav Buřita, Petr Do ladislav.burita@unob.cz; petr.do@unob.cz Univerzita obrany, Fakulta vojenských technologií Kounicova 65, 662 10 Brno Abstrakt:

Více

Semináˇr Java X J2EE Semináˇr Java X p.1/23

Semináˇr Java X J2EE Semináˇr Java X p.1/23 Seminář Java X J2EE Seminář Java X p.1/23 J2EE Složitost obchodních aplikací robusní, distribuované, spolehlivé aplikace s transakcemi na straně serveru, klientské aplikace co nejjednodušší Snaha : Návrh,

Více

ATS Global B.V. ATS Bus.

ATS Global B.V. ATS Bus. ATS Global B.V. je výrobní datová sběrnice, zajišťuje propojení výrobních systémů, poskytuje kompletní expozici výrobních dat, usnadňuje odstraňování problémů spojených s výrobky i procesy a umožňuje sledování

Více

l Kontakt s klientem SSP Popis automatizované komunikace s ÚP ČR v součinnosti a exekuci

l Kontakt s klientem SSP Popis automatizované komunikace s ÚP ČR v součinnosti a exekuci l Kontakt s klientem SSP automatizované komunikace s ÚP ČR v součinnosti a exekuci Obsah: 1. SEZNAM POUŽITÝCH ZKRATEK... 3 2. POPIS SLUŽBY... 4 2.1 Forma a struktura rozhraní... 4 2.2 Dostupnost služby...

Více

9. Sítě MS Windows. Distribuce Windows. Obchodní označení. Jednoduchý OS pro osobní počítače, pouze FAT, základní podpora peer to peer sítí,

9. Sítě MS Windows. Distribuce Windows. Obchodní označení. Jednoduchý OS pro osobní počítače, pouze FAT, základní podpora peer to peer sítí, 9. Sítě MS Windows MS Windows existoval ve 2 vývojových větvích 9x a NT, tyto později byly sloučeny. V současnosti existují aktuální verze Windows XP a Windows 2003 Server. (Očekává se vydání Windows Vista)

Více

Mobilní informační průvodce - RegTim

Mobilní informační průvodce - RegTim Mobilní informační průvodce - RegTim nabízí zpřístupnění kulturního a přírodního dědictví regionu s využitím moderních mobilních informačních technologií pro podporu cestovního ruchu a inovativní propagaci

Více

Webové služby. Martin Sochor

Webové služby. Martin Sochor Webové služby Martin Sochor Webové služby způsob komunikace dvou aplikací přes Web binární zprávy (CORBA) blokovány proxy servery a firewally masivní využití XML protokol SOAP + jazyk pro popis služeb

Více

Návrh softwarových systémů - architektura softwarových systémů

Návrh softwarových systémů - architektura softwarových systémů Návrh softwarových systémů - architektura softwarových systémů Martin Tomášek, Jiří Šebek Návrh softwarových systémů (B6B36NSS) Převzato z přednášky X36AAS M. Molhanec Co je to architektura Využívá se

Více

PODMÍNKY POSKYTOVÁNÍ PŘÍSTUPU K PORTÁLU NAMĚŘENÝCH DAT POMOCÍ WEBOVÝCH SLUŽEB SPOLEČNOSTI ČEZ DISTRIBUCE, A. S.

PODMÍNKY POSKYTOVÁNÍ PŘÍSTUPU K PORTÁLU NAMĚŘENÝCH DAT POMOCÍ WEBOVÝCH SLUŽEB SPOLEČNOSTI ČEZ DISTRIBUCE, A. S. PODMÍNKY POSKYTOVÁNÍ PŘÍSTUPU K PORTÁLU NAMĚŘENÝCH DAT POMOCÍ WEBOVÝCH SLUŽEB SPOLEČNOSTI ČEZ DISTRIBUCE, A. S. 1 ÚVOD... 5 2 POPIS VÝMĚNY DAT... 6 2.1 KOMUNIKAČNÍ SCÉNÁŘE... 6 2.2 TECHNOLOGIE KOMUNIKACE...

Více

Relační vrstva SMB-Síťový komunikační protokol aplikační vrstvy, který slouží ke sdílenému přístupu k souborům, tiskárnám, sériovým portům.

Relační vrstva SMB-Síťový komunikační protokol aplikační vrstvy, který slouží ke sdílenému přístupu k souborům, tiskárnám, sériovým portům. Aplikační vrstva http-protokol, díky kterému je možné zobrazovat webové stránky. -Protokol dokáže přenášet jakékoliv soubory (stránky, obrázky, ) a používá se také k různým dalším službám na internetu

Více

Popis B2B rozhraní pro elektronickou neschopenku

Popis B2B rozhraní pro elektronickou neschopenku Popis B2B rozhraní pro elektronickou neschopenku Historie dokumentu Verze Datum Změny 0.9 30. 4. 2019 Vytvoření dokumentu Obsah 1 Účel dokumentu... 3 2 Charakteristika rozhraní... 3 2.1 Způsob komunikace...

Více

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek Co je to webová aplikace? příklady virtuální obchodní dům intranetový IS podniku vyhledávací služby aplikace jako každá jiná přístupná

Více

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií VY_32_INOVACE_31_20 Škola Název projektu, reg. č. Vzdělávací oblast Vzdělávací obor Tematický okruh Téma Tematická oblast Název Autor Vytvořeno, pro obor, ročník Anotace Přínos/cílové kompetence Střední

Více

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne.

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne. Úvod Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne. Organizace předmětu Materiály k předmětu -Web stránky: http://cw.felk.cvut.cz/doku.php/courses/x33eja/start

Více

Tvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU

Tvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU Tvorba podnikových aplikací v jazyce JAVA Josef Pavlíček KII PEF CZU J2EE Jedná se o přístup: sadu pravidel, technologií, metod, doporučení jak provádět design, vývoj, nasazení a provozování vícevrstvých

Více

Úvod. Klíčové vlastnosti. Jednoduchá obsluha

Úvod. Klíčové vlastnosti. Jednoduchá obsluha REQUESTOR DATASHEET Úvod Requestor Service Desk poskytuje kompletní řešení pro správu interních i externích požadavků, které přicházejí do organizace libovolnou cestou. Produkt je zaměřen na vytvoření

Více

Experimentální systém pro WEB IR

Experimentální systém pro WEB IR Experimentální systém pro WEB IR Jiří Vraný Školitel: Doc. RNDr. Pavel Satrapa PhD. Problematika disertační práce velmi stručný úvod WEB IR information retrieval from WWW, vyhledávání na webu Vzhledem

Více

EXTRAKT z technické normy ISO

EXTRAKT z technické normy ISO EXTRAKT z technické normy ISO Extrakt nenahrazuje samotnou technickou normu, je pouze informativním materiálem o normě. Inteligentní dopravní systémy Datové slovníky ITS Část 4: Minimální systémové požadavky

Více

Analýza a Návrh. Analýza

Analýza a Návrh. Analýza Analysis & Design Návrh nebo Design? Design = návrh Není vytváření použitelného uživatelského prostředí (pouze malinká podmnožina celého návrhu) Často takto omezeně chápáno studenty nedokáží si představit,

Více

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server ADMINISTRACE POČÍTAČOVÝCH SÍTÍ OPC Server Funkce a využití v průmyslové automatizaci Jiří NOSEK 2011 Co je OPC Server? OPC = Open Process Control (původně OLE for Process Control) sada specifikací průmyslového

Více

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011 Technologie Java Enterprise Edition Přemek Brada, KIV ZČU 8.6.2011 Přehled tématu Motivace a úvod Infrastruktura pro velké Java aplikace (Java základní přehled) Části třívrstvé struktury servlety, JSP

Více

O Apache Derby detailněji. Hynek Mlnařík

O Apache Derby detailněji. Hynek Mlnařík O Apache Derby detailněji Hynek Mlnařík Agenda Historie Vlastnosti Architektura Budoucnost Historie 1997 Cloudscape Inc. - JBMS 1999 Informix Software, Inc. odkoupila Cloudscape, Inc. 2001 IBM odkoupila

Více

WCF. IW5 - Programování v.net a C# WCF

WCF. IW5 - Programování v.net a C# WCF IW5 - Programování v.net a C# Strana 1 Obsah přednášky Představení Konfigurace hosta Vygenerování klienta Několik názorných příkladů Strana 2 Co to je Windows Communication Foundation Náhrada za COM, DCOM,.NET

Více

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Web Jaroslav Nečas Obsah přednášky Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Co to je web HTTP protokol bezstavový GET POST HEAD Cookies Session HTTPS

Více

Vytvoření portálu odboru strukturálních fondů Ministerstva vnitra a zajištění jeho hostingu na serveru dodavatele

Vytvoření portálu odboru strukturálních fondů Ministerstva vnitra a zajištění jeho hostingu na serveru dodavatele MINISTERSTVO VNITRA odbor strukturálních fondů č.j. MV- 82945-5 /OSF Praha dne 24. listopadu 2009 Počet listů: 5 Odpověď zadavatele na otázky ze dne 20. listopadu 2009 k Zadávací dokumentaci na veřejnou

Více

Systém elektronického rádce v životních situacích portálu www.senorady.cz

Systém elektronického rádce v životních situacích portálu www.senorady.cz Systém elektronického rádce v životních situacích portálu www.senorady.cz Obec Senorady Miroslav Patočka 2006 Obsah: 1. Úvodní informace 1.1 Informace pro uživatele 1.1.1 Přístupnost HTML, PDA, WAP, XML

Více

Formy komunikace s knihovnami

Formy komunikace s knihovnami Formy komunikace s knihovnami Současné moderní prostředky Jiří Šilha a Jiří Tobiáš, Tritius Solutions a.s., Brno Osnova Základní požadavky na komunikaci s knihovnami Historie komunikace s knihovnami Confluence

Více

Windows a real-time. Windows Embedded

Windows a real-time. Windows Embedded Windows a real-time Windows Embedded Windows pro Embedded zařízení Současnost (2008): Windows Embedded WINDOWS EMBEDDED Windows Embedded CE Windows XP Embedded Windows Embedded for Point of Service Minulé

Více

Systémy pro tvorbu digitálních knihoven

Systémy pro tvorbu digitálních knihoven Systémy pro tvorbu digitálních knihoven Vlastimil Krejčíř, krejcir@ics.muni.cz Ústav výpočetní techniky, Masarykova univerzita, Brno INFORUM 2006, Praha Obsah přednášky Úvod Fedora DSpace EPrints CDSware

Více

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ. MEIV - 2.3.1.1 Windows server 2003 (seznámení s nasazením a použitím)

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ. MEIV - 2.3.1.1 Windows server 2003 (seznámení s nasazením a použitím) Object 12 3 Projekt: ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ Téma: MEIV - 2.3.1.1 Windows server 2003 (seznámení s nasazením a použitím) Obor: Mechanik Elektronik Ročník: 4. Zpracoval(a): Bc. Martin Fojtík Střední

Více

Sísyfos Systém evidence činností

Sísyfos Systém evidence činností Sísyfos Systém evidence Sísyfos : Evidence pracovních Systém Sísyfos je firemní aplikace zaměřená na sledování pracovních úkonů jednotlivých zaměstnanců firmy. Umožňuje sledovat pracovní činnosti na různých

Více

SIMATIC S IT. Micro Automation. Promoters Meeting October Představení CP IT SPIDER CONTROL TELESERVIS. TESTOVACÍ server.

SIMATIC S IT. Micro Automation. Promoters Meeting October Představení CP IT SPIDER CONTROL TELESERVIS. TESTOVACÍ server. SIMATIC S7-200 243-1 2005, Page 1 Program workshopu Začátek: 9.00 GPRS - aplikace pro GPRS, základy - jak nastavit vzdálenou stanici, knihovna instrukcí pro GPRS - jak nastavit server (SINAUT MICRO SC,

Více

(JME) Vybrané partie z jazyka Java (NPRG021) Jiří Tomeš

(JME) Vybrané partie z jazyka Java (NPRG021) Jiří Tomeš Java Micro Edition (JME) Vybrané partie z jazyka Java (NPRG021) Jiří Tomeš O čem se dnes budeme bavit O platformě JME Základní rozdělení JME CLDC MIDP MIDlet(y) a MIDLet suite Ukázky 2 programů IMP CDC

Více

Počítačové sítě. Lekce 4: Síťová architektura TCP/IP

Počítačové sítě. Lekce 4: Síťová architektura TCP/IP Počítačové sítě Lekce 4: Síťová architektura TCP/IP Co je TCP/IP? V úzkém slova smyslu je to sada protokolů používaných v počítačích sítích s počítači na bázi Unixu: TCP = Transmission Control Protocol

Více

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb:

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb: Technologie Marushka Základním konceptem technologie Marushka je použití jádra, které poskytuje přístup a jednotnou grafickou prezentaci geografických dat. Jádro je vyvíjeno na komponentním objektovém

Více

1 Webový server, instalace PHP a MySQL 13

1 Webový server, instalace PHP a MySQL 13 Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského

Více

Internetové služby isenzor

Internetové služby isenzor Internetové služby isenzor Aktuální snímek z webové kamery nebo aktuální teplota umístěná na vašich stránkách představují překvapivě účinný a neotřelý způsob, jak na vaše stránky přilákat nové a zejména

Více

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé

Více

Copyright 2001, COM PLUS CZ a.s., Praha

Copyright 2001, COM PLUS CZ a.s., Praha Základní informace: CP Call je CTI (Computer Telephony Integration) aplikace. Jedná se tedy o vzájemné propojení osobního počítače a telefonního přístroje. Je vytvořena podle standardu CSTA (Computer Supported

Více

Novell Identity Management. Jaromír Látal Datron, a.s.

Novell Identity Management. Jaromír Látal Datron, a.s. Novell Identity Management Jaromír Látal Datron, a.s. 19.4.2012 1 Identity management základní vlastnosti Jednoduché a rychlé poskytování uživatelských účtů Samoobslužné funkce pro uživatele Snadný návrh

Více

Z internetu do nemocnice bezpečně a snadno

Z internetu do nemocnice bezpečně a snadno Z internetu do nemocnice bezpečně a snadno Petr Hron, S.ICZ a.s. 2014 1 Z internetu do nemocnice bezpečně a snadno Identifikace problému Co je k tomu potřeba Bezpečný vzdálený přístup Bezpečnostní architektura

Více

Modul. Univerzální tabulkový export

Modul. Univerzální tabulkový export Modul Univerzální tabulkový export Přístup ke komplexně reportovaným údajům Export je vybaven možnostmi pro velice komplexní prezentaci dat: Umožňuje seskupování dat až v pěti úrovních, seskupování může

Více

Informační systém řešící rozvrhování

Informační systém řešící rozvrhování AIP Scholaris 1(1), 2012, 15 21, ISSN 1805-613X Online: scholaris.vse.cz Informační systém řešící rozvrhování Petra Procházková 1 1 Fakulta informatiky a statistiky, Vysoká škola ekonomická v Praze nám.

Více

Vývoj Internetu značně pokročil a surfování je dnes možné nejen prostřednictvím počítače, ale také prostřednictvím chytrých telefonů, tabletů a

Vývoj Internetu značně pokročil a surfování je dnes možné nejen prostřednictvím počítače, ale také prostřednictvím chytrých telefonů, tabletů a Vývoj Internetu značně pokročil a surfování je dnes možné nejen prostřednictvím počítače, ale také prostřednictvím chytrých telefonů, tabletů a netbooků. Chytré telefony, nazývané také Smartphony, poskytují

Více

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Webové aplikace Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Harmonogram Dopolední blok 9:00 12:30 Ing. Dostal Úvod, XHTML + CSS Ing. Brada,

Více

IMPLEMENTACE SYSTÉMU GROUPWISE NA PEF ČZU V PRAZE IMPLEMENTATION OF THE SYSTEM GROUPWISE ON THE PEF ČZU PRAGUE. Jiří Vaněk, Jan Jarolímek

IMPLEMENTACE SYSTÉMU GROUPWISE NA PEF ČZU V PRAZE IMPLEMENTATION OF THE SYSTEM GROUPWISE ON THE PEF ČZU PRAGUE. Jiří Vaněk, Jan Jarolímek IMPLEMENTACE SYSTÉMU GROUPWISE NA PEF ČZU V PRAZE IMPLEMENTATION OF THE SYSTEM GROUPWISE ON THE PEF ČZU PRAGUE Jiří Vaněk, Jan Jarolímek Anotace: Příspěvek se zabývá hlavními trendy rozvoje programů pro

Více

Obsah. Zpracoval:

Obsah. Zpracoval: Zpracoval: houzvjir@fel.cvut.cz 03. Modelem řízený vývoj. Doménový (business), konceptuální (analytický) a logický (návrhový) model. Vize projektu. (A7B36SIN) Obsah Modelem řízený vývoj... 2 Cíl MDD, proč

Více

EXTRAKT z technické normy CEN ISO

EXTRAKT z technické normy CEN ISO EXTRAKT z technické normy CEN ISO Extrakt nenahrazuje samotnou technickou normu, je pouze informativním materiálem o normě. Inteligentní dopravní systémy Kooperativní ITS Zařízení stanice ITS pro přenos

Více

Setkání FlexiBee vývojářů. Jak jsme psali eshop

Setkání FlexiBee vývojářů. Jak jsme psali eshop Setkání FlexiBee vývojářů Jak jsme psali eshop Ing. Tomáš Hruška, Aleš Woska Červen 2012 ARIT s.r.o. - na trhu již od roku 1996 Tým profesionálů, které práce baví ARIT - silný partner pro FlexiBee distributor

Více

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

Internet Information Services (IIS) 6.0

Internet Information Services (IIS) 6.0 Internet Information Services (IIS) 6.0 V operačním systému Windows Server 2003 je obsažena i služba IIS v 6.0. Služba IIS poskytuje jak www server tak i některé další služby (FTP, NNTP,...). Jedná se

Více

Systém pro evidenci a vyhodnocování hovorů

Systém pro evidenci a vyhodnocování hovorů Systém pro evidenci a vyhodnocování hovorů ALL.COM software, s.r.o. AMI Praha a.s. 11. září 2007 Vypracovali: Tomáš Čihák, tomas.cihak@ami.cz Jiří Zíka, zika@allsoft.cz ALL.COM software, s.r.o. sídlo Zavadilova

Více