restlet et le multi-plateforme
DESCRIPTION
Présentation faite à EclipseDay Paris http://www.eclipsedayparis.com/2011/TRANSCRIPT
![Page 1: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/1.jpg)
RESTLET, UN FRAMEWORK MULTIPLATEFORME8 novembre 2011
![Page 2: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/2.jpg)
Copyright Noelios Technologies – Tous droits réservés
INTERVENANT
Noelios Technologies• Editeur de logiciel
– création en 2008
• R&D– open source (Restlet)– collaboratif (Cap Digital)
• Services– conseil– co-développement– support technique
Jérôme LOUVEL– Directeur Technique– Créateur de Restlet– Contributeur « RESTful Web Services »– Co-auteur « Restlet in Action »– Expert JCP / JSR-311 (JAX-RS)
![Page 3: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/3.jpg)
Copyright Noelios Technologies – Tous droits réservés
AGENDA
1. Introduction: Restlet et le multiplateforme– Restlet Framework : extensions, éditions et portage– Lancement de l’édition pour « OSGi environments »
2. Interopérabilité: Restlet dans le cloud– Côté client : extensions OData et Crypto– Côté serveur : accès SDC, déploiement AWS/Azure/GAE
3. Perspectives: Restlet et les APIs web– Marché des APIs web– Livre « Restlet in Action »– Lancement d’APISpark
![Page 4: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/4.jpg)
INTRODUCTION: RESTLET ET LE MULTIPLATEFORMEPartie 1/3
![Page 5: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/5.jpg)
Copyright Noelios Technologies – Tous droits réservés
RESTLET FRAMEWORK• Premier framework REST pour Java
– Lancement en 2005– Large communauté– Innovation constante– http://www.restlet.org
• Fonctionnalités principales– Couverture complète de HTTP et REST– API Java à la fois cliente et serveur– Routage intégré (basé sur les URIs, virtual hosts, etc.)– Sécurité intégrée (authentification, autorisation, confidentialité)– Serveur web complet (fichiers statiques, conneg)– 36 extensions (Atom, EMF, JSON, OData, JAAS, OAuth, etc.)
![Page 6: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/6.jpg)
Copyright Noelios Technologies – Tous droits réservés
RÉFÉRENCES
![Page 7: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/7.jpg)
Copyright Noelios Technologies – Tous droits réservés
STRUCTURE D’UN PROJET RESTLET
Projets utilisateurs
API Restlet
Moteur Restlet
Restlet ExtensionsRestlet Extensions
Extension Restlet
![Page 8: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/8.jpg)
Copyright Noelios Technologies – Tous droits réservés
FILTRAGE ET ROUTAGE
Next Restlet
Filter
B
C
A
Router
B
C
A
Route 1
Route 2
Route 3
A
B
C
![Page 9: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/9.jpg)
Copyright Noelios Technologies – Tous droits réservés
INTERFACES ANNOTÉES
HTTP
Annotated Java interface
REST API
Clientresource
Serverresource
Clientproxy
Serversubclass
![Page 10: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/10.jpg)
Copyright Noelios Technologies – Tous droits réservés
SERVICE DE CONVERSION
Resource
XML
HTML
JSON
StateRepresentation
bean
Form Data
RDF
…
Atom
Converter service
![Page 11: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/11.jpg)
Copyright Noelios Technologies – Tous droits réservés
EDITIONS DE RESTLET FRAMEWORK
![Page 12: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/12.jpg)
Copyright Noelios Technologies – Tous droits réservés
PORTAGE SEMI-AUTOMATIQUE
![Page 13: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/13.jpg)
Copyright Noelios Technologies – Tous droits réservés
PERSONNALISATION DU CODE SOURCE
• Inclusion ou exclusion– par fichier via extensions spéciales– au niveau d’une méthode– au niveau d’un bloc de code
![Page 14: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/14.jpg)
Copyright Noelios Technologies – Tous droits réservés
EDITION « OSGI ENVIRONMENTS »
• Compatible Equinox et Felix
• Bundles OSGi avec dépendances propres
• Site de mise à jour Eclipse/p2
• Enregistrement des extensions via Activator
• Extension OSGi en cours d’incubation issue d’un projet IBM
![Page 15: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/15.jpg)
Copyright Noelios Technologies – Tous droits réservés
Restlet/OSGicode
Restlet/And.code
Restlet/JEEcode
Restlet/JSEcode
RESTLET FORGE
Restlet code base
FichierZIP
Installateur Windows
Entrepôt Maven
Site Eclipse/p2
Restlet/GWTcode
Restlet/GAEcode
1) Personnalisation 2) Distribution
![Page 16: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/16.jpg)
INTEROPÉRABILITÉ: RESTLET DANS LE CLOUDPartie 2/3
![Page 17: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/17.jpg)
Copyright Noelios Technologies – Tous droits réservés
OUVERTURE AU CLOUDCÔTÉ SERVEUR ET CLIENT
![Page 18: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/18.jpg)
Copyright Noelios Technologies – Tous droits réservés
EXTENSION ODATA ½FONCTIONNEMENT
![Page 19: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/19.jpg)
Copyright Noelios Technologies – Tous droits réservés
EXTENSION ODATA 2/2CAS D’USAGE
http://www.odata.org
![Page 20: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/20.jpg)
Copyright Noelios Technologies – Tous droits réservés
EXTENSION CRYPTO
• Plugins d’authentification Restlet pour– HTTP DIGEST– AWS S3 et QUERY : tous les services
• support authentification S3 côté serveur
– Azure SharedKey et Azure SharedKey Lite• support des APIs de services Windows Azure
– CookieAuthenticator• encrytage des informations (token et expiration)• gestion du login et logout
![Page 21: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/21.jpg)
Copyright Noelios Technologies – Tous droits réservés
GOOGLE SECURE DATA CONNECTOR
• Protocole SDC– tunnel SSL multiplexé– basé sur Google Prot.Buffer– tunnels HTTP et socket– lecture et écriture
• Agent SDC– installé dans l’intranet– open source (Apache
License)
![Page 22: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/22.jpg)
Copyright Noelios Technologies – Tous droits réservés
CONNECTEUR RESTLET SDC
![Page 23: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/23.jpg)
PERSPECTIVES: RESTLET ET LES APIS WEBPartie 4/4
![Page 24: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/24.jpg)
Copyright Noelios Technologies – Tous droits réservés
ROADMAP RESTLET• Version 2.1 (Mars 2012)
– Connecteur HTTP/NIO interne : alternative à Jetty– Support de SIP unifié : alternative à SIPServlets– Support d’OAuth et OpenID 2.0 : contribution Ericsson Labs– Connecteur SDC (Secure Data Connector)– Extension EMF : conversion automatique XML/XMI– Formulaires web multi-part client
• Version 2.2 (Octobre 2012)– Optimisation de taille (Android et GWT)– Support du protocole SPDY– Migration GitHub, StackOverflow, Google Groups– Nouveau tutoriel– etc.
![Page 25: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/25.jpg)
Copyright Noelios Technologies – Tous droits réservés
PITCH
• Aujourd’hui tout le monde possède son site web et l’on ne débat plus que sur la meilleure façon de les développer.
• Demain, tout le monde aura son API web, de préférence RESTful et les sites web s’appuieront directement sur des APIs web
![Page 26: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/26.jpg)
Copyright Noelios Technologies – Tous droits réservés
SITE WEBA N D R O I D
ECOSYSTÈME
C L O U D
AmazonEC2 C L O U D
Google App Engine C L O U D
WindowsAzure C L O U D
Cloudprivé
Développeursutilisateurs d’APIs
APIs web
Développeurscréateurs d’APIs
Gestionnairesd’APIs
WEB OS
W
MASH UP
API web
Hébergement adaptable
Interopérabilitémaximale
ServicesDonnées
W
Ouverture du SIpar les APIs web
![Page 27: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/27.jpg)
Copyright Noelios Technologies – Tous droits réservés
QUELQUES CHIFFRES
20052006
20072008
20092010
2011 (nove
mbre)0
1000
2000
3000
4000
Nombre d'APIs web sur ProgrammableWeb
![Page 28: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/28.jpg)
Copyright Noelios Technologies – Tous droits réservés
CAS D’USAGES
1. Application mobiles connectées– natives ou HTML 5
2. Cloud computing– IaaS/PaaS (AWS, GAE, Azure)– SaaS (Basecamp, SalesForce, Google Apps)
3. Objets communicants– Personnels (Karotz, pèse personnes)– Professionnels (M2M, RFID, GPS, 3G, géoloc.)
4. E-marketing– Places de marchés, comparateurs de prix, affiliation (Amazon,
eBay, Kelkoo)
![Page 29: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/29.jpg)
Copyright Noelios Technologies – Tous droits réservés
INTÉRÊT POUR UN DÉVELOPPEUR JAVA
• Apprendre REST et HTTP est un investissement sur le long terme– nécessite du temps, comme l’orienté objet– premiers bénéfices faciles à obtenir– rester pragmatique
• Nombreuses opportunités avec les APIs web– exposition d’APIs– consommation d’APIs– mashups d’APIs
• Restlet Framework offre– une boîte à outil multiplateforme, complète et éprouvée– qui peut vous accompagner tout au long de ce chemin
![Page 30: Restlet et le multi-plateforme](https://reader031.vdocuments.net/reader031/viewer/2022020720/54be2a134a7959df738b463f/html5/thumbnails/30.jpg)
Copyright Noelios Technologies – Tous droits réservés
POUR ALLER PLUS LOIN…
• Livre « Restlet in Action »– Publication début 2012– Restlet, REST, ROA/D, cloud– Version « early access » dispo.
• Lancement « API Spark »– Plate-forme cloud pour APIs web– basée sur Restlet Framework– inscription beta privée:
http://apispark.com