\npublic class AjaxService() {\npublic String[] getOptions() {\nreturn new String[]{"1","2","3"};\n}\n}\n
\nCode JavaScript côté client :\n
\nfunction event() {\nAjaxService.getOptions(callback);\n}\n\nfunction callback(data) {\ndwr.util.addOptions("listid", data);\n}\n
\nDans l’exemple ci-dessus, lorsque la fonction « event() » est lancée côté client, DWR fait un appel au serveur sur un objet AjaxService pour récupérer la liste de valeurs. En passant le paramètre « callback », c’est cette fonction qui sera appelée côté client dès que l’appel au serveur sera terminé. Les données récupérées se retrouvent dans la variable « data ». DWR fournit également tout un tas de fonctions très pratiques pour mettre à jour le DOM, ici par exemple on peut remplir facilement les options d’un <select> avec la méthode dwr.util.addOptions(...)
. Dans l’exemple c’est le <select> dont l’id est « listid ».\n\nLes présentateurs ont fait quelque chose de vraiment sympa après avoir expliqué le fonctionnement de DWR. Ils ont créé à partir de zéro un jeu de bataille navale entièrement en AJAX. A la fin les personnes dans l’auditoire ont pu, avec leurs portables, se connecter sur le PC (ou le Mac en l’occurence) de Geert et jouer simultanément sur l’application qui venait d’être mise en place. Il y avait en plus un chat intégré qui montrait les possibilités de « push » (reverse-AJAX) que possède DWR dans sa dernière version.\n\n