Arrivé un peu un retard, suite au premier billet sur JavaFX, Fabien, Hossein et moi, nous installons confortablement afin d'assister à la conférence Dojo/DWR.

Pour ma part, j'avais déjà utilisé JQuery et DWR sur un précédent projet, et ayant aimé leur utilisation, j'étais curieux de voir ce que Joe Walker et Nikolai Onken allaient nous présenter.

Tout d'abord, nous avons eu droit à une présentation de Dojo, surtout au moment de notre arrivée, Dojo et GFX pour pouvoir faire de la manipulation d'objets graphiques 2D de bas niveau (rectangle, cercle, ellipse, etc ..).
On a eu droit à une démonstration d'un chat utilisant le serveur Comet et l'api Google Translate. Chacun des speakers écrivait dans sa langue et la traduction était faite de manière automatique par Google Translator à l'affichage sur le poste de l'autre speaker, tout en passant par Comet qui push les données sur le browser (reverse Ajax).

Nous avons eu ensuite une présentation de DWR, qui permet d'utiliser, via proxy, des objets Java dans du Javascript.
Une démonstration d'upload d'image (binary file handling), et récupération sur le client.
Le speaker, nous montre la possibilité de faire du reverse Ajax, via certaines API DWR.
Il nous montre la possibilité pour DWR d'utiliser le reverse Ajax en mixant le meilleur des mondes Comet + Polling + Piggyback.

Voici un exemple :

WebContext wctx = WebContextFactory.get();
String chatPage = wctx.getCurrentPage();

// Find all the browser on window open on the chat page:
Collection sessions = wctx.getScriptSessionsByPage(chatPage);

// Use the Javascript Proxy API to empty the chatlog <ul> element
// and re-fill it with new messages
Util utilAll = new Util(sessions);
utilAll.removeAllOptions("chatlog");
utilAll.addOptions("chatlog", messages, "text");

Au final nous avons eu une présentation des possibilités de couplage des deux technologies, avec une précision sur le packaging de Dojo, qui a priori a été largement facilité,notamment au niveau des imports des fichiers Javascipt.

Pour ma part, étant fan plutôt de JQuery, j'aurai préféré que DWR permette de faire de même avec ce framework.

A suivre en tout cas, je vais me remettre à DWR et voir si la fonctionnalité de Reverse Ajax, sera peu à peu adoptée dans des applications d'entreprise, de moyenne à grande envergure.