290 likes | 524 Views
Mashups for the masses. Maarten Brugman & Sven Vintges. Agenda KLAD. Mashups Maarten Voorbeelden Sven Tools Maarten YUI Sven maps API YUI feed API JavaScript? web svs API XXX logging Google APIs Maarten maps API gadget API feed API web svs API XXX logging ? Case: callcenter
E N D
Mashups for the masses Maarten Brugman&Sven Vintges
Agenda KLAD • Mashups Maarten • Voorbeelden Sven • Tools Maarten • YUI Sven • maps API • YUI • feed API • JavaScript? • web svs API XXX • logging • Google APIs Maarten • maps API • gadget API • feed API • web svs API XXX • logging ? • Case: callcenter • Demo + code snippets beiden: map, map controls, data op map, focussen op map, • Beveiliging (cookies, IWA, SAML? WS-Sec?) Sven • Vergelijking • Andere mashup-tools (WSO2 Sven, Google mashup Maarten, yahoo pipes Sven, intel mashmaker Maarten)
Agenda • Mashups • Voorbeelden • Tools • YUI • Google • Case • Demo • Beveiliging • Vergelijking
Wat is een mashup Muzikale stroming DJ Danger Mouse: The Beatles and Jay-z “a web application that combines data from more than one source into a single integrated tool “ (Wikipedia)”
Voorbeelden TODO SVEN
Soorten mashups • Publieke mashups • Enterprise mashups • combineer enterprise data uit verschillende bronnen • mogelijk ook publieke bronnen • Gadgets / widgets in sidebar / persoonlijke pagina • eigenlijk geen mashup • soms gebruikt in mashups (slide met voorbeeld van iGoogle?)
Soorten gegevensbronnen • Maps • Google, Yahoo!, Virtual Earth, ... • Feeds • RSS • ATOM • Web services • Typisch in enterprise-context • HTML
Mashups Server Side • Integratie informatie op de server (proxy style).
Mashups Server Side • Voordelen • Beveiliging: XMLHttpRequest sandboxing; • Veel libraries in JAVA en .NET om WS te gebruiken; • Filtering van data (grote hoeveelheden); • Caching; • Aggregatie; • Multiple sites.
Mashups Client Side • Cross domain issues; • Makkelijk en snel, geen applicatie server nodig; • Veel browsers ondersteunen JSON; • Performance, kracht van client wordt gebruiker.
Mashup Tools On-line: • Google mashup server (beta) • Yahoo! Pipes (beta) • Microsoft Popfly <TODO> Software: • WSO2 mashup server • IBM mashup starter kit (beta)
Aanroepen van SOAP web services • dojo • prototype
Hoe kunnen mashups tot stand worden gebracht? (1) 3rd party components; Maps (swisstrains.cz); Representatie van geofeeds; Representatie van locatieobjecten; Charting (finance.google.com); Tonen van data uit verschillende bronnen; Combineren van grafiek met andere informatie;
Hoe kunnen mashups tot stand worden gebracht? (1) Verschillende gegevensbronnen; Eigen beheer; Interne RSS feed (openstaande incidenten); ….; Ingekocht; Software as a Service?; …. Uitgangspunt: 1+1 = 3
Hoe kunnen mashups tot stand worden gebracht? (1) (3rd party) Services; … Representatie van geofeeds; Representatie van locatieobjecten; … Tonen van data uit verschillende bronnen; Combineren van grafiek met andere informatie;
Aan de slag • Wat hebben we nodig? • Een Toolkit • Voldoende grote set componenten; • Combineren van verschillende gegevensbronnen; • Aanroepen van services; • Een ‘lekker’ gevoel geven aan de applicatie. • Ontwikkelomgeving
Dit is de voorbeeld titel Google Toolkit Een sub bullet Nog een bullet Nog een bullet Bullet 2 Bullet 3
Agenda Yahoo Toolkit Een sub bullet Nog een bullet Nog een bullet Bullet 2 Bullet 3
Google APIs so many to choose from...
Yahoo Maps Mapping Maps.google.com Maps.yahoo.com ….
Google vs Yahoo Ajax Toolkits Nog een bullet Nog een bullet ….
Toekomst Google Mashup toolkit Nog een bullet Nog een bullet http://www.mapbuilder.net/ http://mashmaker.intel.com/
Links Websites http://www.programmableweb.com/ http://reviews.cnet.com/4520-9239_7-6526615-3.html http://developer.yahoo.com/ Mashups http://www.swisstrain.cz http://www.treelz.com http://spotcrime.com/ Bullet 3
Agenda Bullet 1 Een sub bullet Nog een bullet Nog een bullet Bullet 2 Bullet 3
Benodigdheden • Tools • Commercieel (enterprise mashups): Nexaweb, JackBe, BackBase, <TODO> • Open source: google gadget, YUI, • Gegevensbronnen • Maps: google, yahoo, ask, M$ • Publieke registers: kvk, telefoongids, postcodes, … • Enterprise services: …. • Runtime • Appserver • Google mashup server • WSO2 mashup server
Cross-domain referencing • Communiceren met andere server niet mogelijk via JavaScript • Oplossingen: • proxy op dezelfde server (server-side) • JSON • dynamic script tag • IFrame