Designer une API REST

La période de fêtes approchant à grands pas, nous vous proposons une “Quick Reference Card” sur le design des API dont l’objectif est de synthétiser les bonnes pratiques de conception et de design d’API REST.
➡ Télécharger l’API Design – Quick Reference Card
OCTO – RESTful API Design

Si vous avez plus de temps, le présent article reprend – point par point – les éléments de la « carte de référence », en étayant et justifiant les propositions.

Bonne lecture!

Lire la suite

Les nouvelles architectures front Web et leur impact sur la DSI – partie 2

Dans la partie 1 de cet article, nous avons traité des nouvelles architectures front-end basées sur des applications Web massivement Javascript appelant des API offertes par un serveur back-end : les nouvelles architectures front Web et leur impact sur les DSI – Partie 1.

Nous avons vu qu’elles sont apparues ces dernières années grâce à l’augmentation des performances des navigateurs et à l’amélioration des outils d’industrialisation des développements Javascript.

Dans cette seconde partie, nous nous intéresserons aux raisons pour lesquelles on devrait choisir ces nouvelles architectures, aux opportunités qu’elles offrent, et aux conséquences sur les organisations des directions informatiques.

Lire la suite

PHP : Soyez sympa, autodocumentez vos webservices !

Il est assez crispant de faire appel à un webservice et de se voir rétorquer ’40x’ ou ’50x’ … sans plus d’explications. Bien sûr la doc sur le wiki ou sur le site n’est pas à jour et ne vous éclaire en rien sur ce code d’erreur, ou ne vous indique pas la faute (de frappe) que vous avez faite ou les paramètres manquant.

Je vous propose dans cet article d’être sympa avec les utilisateurs de votre webservice tout en étant vous-même plutôt fainéant : auto(ou presque)documentez vos webservices.

Lire la suite

OCTO accompagne AXA Banque sur son API bancaire

Communiqué de presse OCTO, Paris, le 20/03/12

 Grand prix de l'Appli bancaire by Axa Banque

AXA Banque lance le premier « Grand prix de l’Appli Bancaire », s’appuyant sur une API (Application Programming Interface) et un écosystème développés en collaboration avec OCTO Technology.

L’API d’AXA Banque, rendue publique le 19 mars 2012, est un projet innovant d’ouverture du SI, offrant la possibilité à des développeurs tiers de créer des applications utilisant les données bancaires des clients AXA Banque qui les y auront autorisées. Le portail développeur AXA Banque, accessible à http://developer.axabanque.fr/, détaille la documentation de l’API et offre les liens vers l’ensemble de l’écosystème.

Lire la suite

Les implémentations JAX-RS (1)

Il y a quelque temps l’envie de développer une petite application Java RESTFul m’a pris subitement. Je me suis donc penché sur les différentes implémentations JAX-RS et voici le résultat de mon investigation.

Je me suis tout de même posé quelques contraintes :

  • que mon code Java soit complètement indépendant de l’implémentation JAX-RS choisie ;
  • pouvoir facilement intégrer mes services avec Spring ;
  • ne produire et consommer que du JSON en utilisant l’API Jackson ;
  • pouvoir facilement mettre en place des tests unitaires.

Ce qui m’amène à comparer trois implémentations : CXF (version 2.3.2), Jersey (version 1.5), RESTEasy (version 2.1.0.GA) et Restlet (version 2.0.5).
Lire la suite

Alfresco est il une solution pour votre entreprise ?

En ce moment, on entend beaucoup parler de collaboratif, d’entreprise 2.0, de wiki, … et aussi d’Alfresco.

Logiciel libre, grosse communauté, architecture logicielle très proche de celle de Documentum mais avec des technologies plus récentes, Alfresco est une solution de gestion électronique de documents qui a semble-t-il tout pour plaire.

Cela dit tout le monde sait bien que la solution ultime et universelle n’existe pas et en vertu de cela je vous propose de faire une petite revue de l’adéquation entre des besoins courants et la manière dont Alfresco y répond, l’objectif étant de vous fournir un premier aperçu de ce qu’est Alfresco.

Cet article n’a pas pour but de vous « vendre » ou de vous décourager d’utiliser Alfresco mais simplement de donner un aperçu des possibilités du produit. N’hésitez pas à me faire part de vos remarques, demandes d’informations, …

Lire la suite

Versioning de services REST

Introduction

Le versioning de service est un thème à part entière dans les architectures orientée service tant il structure l’évolutivité d’un service. Les architectures REST n’échappent pas à la règle. Posant les principes généraux de l’architecture, Roy Fielding n’en a pas pour autant décrit tous les méandres. Il n’appartient donc qu’à nous, développeurs et architectes, de définir ce qu’est le versioning des services REST en respectant ces principes. Ce billet traitera donc la problématique de versioning des services REST.

Lire la suite

La stratégie de test d’une architecture REST (2/3) – Test d’intégration

Cet article est le deuxième d’une série de 3 articles traitant de la stratégie de test d’une architecture REST. Il fait suite au billet sur le test unitaire d’une ressource REST. Pour rappel nous allons, par l’exemple, mettre en pace une stratégie de test sur un code d’exposition de web services REST en Java. L’exemple de code se basera sur le framework REST Jersey, implémentation de référence de Sun de la JSR-311 déjà présentée dans un précédent article . Le but de ces trois articles est de présenter un harnais de tests pouvant couvrir la mise en place de Web services REST. Ce deuxième article s’attardera sur les tests d’intégration tandis qu’un prochain article traitera des tests de recette.
Lire la suite

La stratégie de test d’une architecture REST (1/3) – Test unitaire d’une ressource

Cet article est le premier d’une série de 3 articles traitant de la stratégie de test d’une architecture REST. Il fait suite au billet sur les types de test utilisés sur un projet Agile. Par l’exemple, nous allons mettre en place une stratégie de tests sur un code d’exposition de web services REST en Java. L’exemple de code se basera sur le framework REST Jersey, RI de Sun de la JSR-311 déjà présenté dans un précédent article. Le but de ces trois articles est de présenter un harnais de tests pouvant couvrir la mise en place de Web services REST. Ce premier article s’attardera sur les tests unitaires tandis que les suivants étudieront les tests d’intégration puis les tests de recette.

Lire la suite