Avant de m'attaquer à GWT, j'ai utilisé l'AOP pour encapsuler de manière transparente les Exceptions des couches basses en une exception unique appartenant à mon projet. J'ai aussi utilisé XStream pour charger très simplement mon MenuFactory (Une classe qui me permet de générer le menu principal de mon application) à partir d'un fichier XML.

Et puis je me suis lancer officiellement dans l'aventure GWT:

  • le plugin google pour Eclipse était déjà installé de la semaine précédente
  • j'ai utilisé l'archetype décrit sur cette page pour générer le squelette de mon nouveau module Maven
  • j'ai utilisé la commande mvn gwt:eclipse pour générer les fichiers qui permettent à Eclipse de lancer automatiquement le serveur en mode hosté en ouvrant directement mon application
  • j'ai utilisé gwtrpc-spring pour gérer la servlet principale des services distants GWT. Cette API est géniale de simplicité car elle supprime toute la conf GWT que l'on doit faire pour chaque appelle RPC par une servlet unique et c'est Spring qui va auto-scanner les services RPC grâce à une annotation. Je ne vais donc pas utiliser GWT Server Library.
  • finalement je vais me limiter à GWT. Je ne vais pas utiliser GWT-Ext car cette dernière à l'air lourde pour un gain ergonomique qui n'est pas forcément justifié. Je prefère donc jouer la carte de la légèreté avec l'API de base GWT qui est déjà bien suffisante pour mon besoin.

J'ai également commencé à réfléchir à l'organisation de mon code pour gérer les "vues", les évènements et la construction du menu principal. Sans oublier l'aspect sécurité de l'application, l'internationalisation, les log... J'oublie certainement quelques tâches mais l'essentiel est résumé dans ce billet.

Aujourd'hui, j'ai voulu mettre en place Gilead mais malheureusement le proxy réseau de l'entreprise ne m'a pas permis de le télécharger. Je remet donc cette tâche à la semaine prochaine. Pour info Gilead permet de rendre compatible les Pojos hibernate dans la couche cliente de GWT.

Le projet avance vite, et les premiers écrans ne devraient pas tarder à pouvoir être montré en démo à la MOA.