Webové služby nad IS/STAG 1 / 21 Seminář IS/STAG Kunžak 2008 Seminář IS/STAG – Kunžak 2008 Webové služby nad IS/STAG Lukáš Valenta
Webové služby nad IS/STAG 2 / 21 Seminář IS/STAG Kunžak 2008 Seminář IS/STAG – Kunžak 2008 Webové služby nad IS/STAG • Webové služby – proč a jak? • Podporované standardy • Implementované služby • Nadstavbová aplikace • Ukázkové postupy
Webové služby nad IS/STAG 3 / 21 Seminář IS/STAG Kunžak 2008 • Data v IS/STAG dosud přístupná – Nativní klient – WWW • „modré stránky“ • portál • Zaměřeno na „lidské“ uživatele • „Strojový“ přístup k datům = integrace externích systémů – „vykrádání modrých stránek“ – přímý přístup do DB – webové služby
Webové služby nad IS/STAG 4 / 21 Seminář IS/STAG Kunžak 2008 Externí systémy • WWW stránky fakult, kateder – aktuální seznamy předmětů, vyučujících, rozvrhů, studentů, … • Místní evidenční systémy známek – „počítačově zdatnější“ vyučující – vlastní evidence zápočtů – pak ale přepisování sekretářkami • Napojení „na Excel“ • Integrace dalších systémů – správa budov
Webové služby nad IS/STAG 5 / 21 Seminář IS/STAG Kunžak 2008 • Webové služby = „souhrnné označení pro sadu technologií umožňujících komunikaci mezi aplikacemi“ – libovolné platformy – založeno na otevřených standardech (XML, HTTP) • Webová služba = „jednoduchá komponenta nabízející určitou službu“ – „web service“ či „web-service“ – má svoji adresu URL – obsahuje formální popis svého rozhraní – je zcela obecná Webová služba
Webové služby nad IS/STAG 6 / 21 Seminář IS/STAG Kunžak 2008 • „Web Services“ – Standard W3C – Známý, podporovaný, komplexní – „strojově“ orientovaný – WSDL, XMLSchema, SOAP – • Webové služby dle „REST“ – „Representational State Transfer“ – Orientovaný více na přístup k datům, objektům – Jednodušší – • Každá služba zveřejněna oběma způsoby Podporované standardy
Webové služby nad IS/STAG 7 / 21 Seminář IS/STAG Kunžak 2008 • SOAP – protokol použitý pro volání služby • WSDL - přesný popis rozhraní webové služby – z WSDL definice lze automaticky generovat klientský kód, který umí službu využívat • Určeno pro – obecné klienty – napojení externích systémů Web Services
Webové služby nad IS/STAG 8 / 21 Seminář IS/STAG Kunžak 2008 Webové služby dle REST • SOAP ani WSDL není vyžadováno – naše implementace ale WSDL obsahuje (důležité) • Přístup k datům – na dané adrese URL jsou přímo dostupná data (stažení metodou HTTP GET) – v případě uploadu zaslání vstupního XML metodou POST • Určeno pro – jednoduché klienty – člověka a www prohlížeč
Webové služby nad IS/STAG 9 / 21 Seminář IS/STAG Kunžak 2008 Ukázková služba dle REST • Seznam předmětů katedry KIV: /predmety/getPredmetyByKatedra?katedra=KIV&rok=2007 ACG ACG Počítačová grafika pro pokročilé Počítačová grafika pro pokročilé KIV KIV ACS ACS Architektury číslicových systémů Architektury číslicových systémů KIV KIV </ns1:getPredmetyByKatedraResponse>
Webové služby nad IS/STAG 10 / 21 Seminář IS/STAG Kunžak 2008 Ukázková služba dle REST • Zápis známek učitelem – metoda HTTP POST /services/rest/znamky/uploadZnamekVyucujici KIV KIV PPA1 PPA ZS ZS CZ CZ A07494 A </ns1:getZnamkyByPredmetResponse>
Webové služby nad IS/STAG 11 / 21 Seminář IS/STAG Kunžak 2008 Informace o aplikaci • – Detailní informace → nápověda • Implementované služby (aktuálně): – cca celé Prohlížení – hromadný download/upload známek – individuální pro potřeby ZČU • Očekáván další zájem – služby „na zakázku“ – Služby pro integraci s externími systémy – Specifické výstupy/sestavy ze STAGu – Hromadné úpravy dat (Excel)
Webové služby nad IS/STAG 12 / 21 Seminář IS/STAG Kunžak 2008 Nadstavba – „WebAccess“ • Nad vlastní aplikací „Webové služby“ je nadstavba • Webová aplikace – pohodlné rozhraní pro uživatele - formuláře • Prohlížení dostupných služeb, zadávání parametrů, volání služeb • Stahování výstupů služeb v XML + konverze do dalších formátů – CSV – veškerá tabulární data ( Excel) – ICS (iCAL) – kalendáře ( Outlook, GoogleCalendar)
Webové služby nad IS/STAG 13 / 21 Seminář IS/STAG Kunžak 2008 Ukázka použití
Webové služby nad IS/STAG 14 / 21 Seminář IS/STAG Kunžak 2008 Ukázka použití (2) • Po volání služby je výsledek uchován – Data lze stáhnout v různých formátech, zde CSV • Přímo uvedena použitá adresa Webové služby
Webové služby nad IS/STAG 15 / 21 Seminář IS/STAG Kunžak 2008 Ukázka použití (3) • Praktický příklad - hromadný zápis známek vyučujícím/katedrou: – stáhne si seznam studentů na svém předmětu/termínu/rozvrhové akci – otevře v Excelu a vyplní známky, zápočty – nahraje vyplněné údaje do STAGu
Webové služby nad IS/STAG 16 / 21 Seminář IS/STAG Kunžak 2008 Ukázka použití (4)
Webové služby nad IS/STAG 17 / 21 Seminář IS/STAG Kunžak 2008 Ukázka použití (5) • Podpora formátu ICS (iCAL) – kalendáře – veškeré rozvrhy – harmonogram akademického roku – zkouškové termíny • Import do kalendářových aplikací – MS Outlook – Google Calendar • např. lze nasdílet studentům rozvrh učitele • Generování s přihlédnutím k harmonogramu – přesunuté dny, svátky,...
Webové služby nad IS/STAG 18 / 21 Seminář IS/STAG Kunžak 2008 Ukázka použití (6)
Webové služby nad IS/STAG 19 / 21 Seminář IS/STAG Kunžak 2008 Ukázka použití (7)
Webové služby nad IS/STAG 20 / 21 Seminář IS/STAG Kunžak 2008 Závěr • Další rozhraní STAGu – „snadná“ realizace dalších služeb – beta verze, těsně před oficiálním vypuštěním – • Požadavky – Java servlet kontejner (Tomcat, JBoss,...) • Nic společného s portálem – zcela samostatná aplikace • Pohodlné webové rozhraní pro „lidi“
Webové služby nad IS/STAG 21 / 21 Seminář IS/STAG Kunžak 2008 Zeptejte se mě na co chcete... já na co chci odpovím Děkuji za pozornost