Le blog de Fabien DUMINY

Un blog utilisant WordPress

Skip to: Content | Sidebar | Footer

Paris JUG – GWT conference

6 novembre, 2009 (20:14) | Evènement, Java, Paris JUG | By: fabien

The 4th of november 2008, I attended to the GWT conference organised by Paris JUG, a JAVA users group based in Paris. That allowed me to learn more about GWT in order to develop a virtual desktop for JNode, as a coworker suggested me.

First part : GWT

The presentator started by speaking about a very simple game he has developed in only few hours on his PC/Windows and that he has tested on the Wii (whose browser is opera). Then he invited us to consult the blogs on ongwt.

Examples of GWT based applications/libraries :

  • Google earth
  • contact office : an online office software
  • myERP : a complete ERP based on GWT
  • GWT Window Manager : a window manager
  • GWT Desktop Framework : a library based on the HMVC architecture to manage forms with input validation
  • GWT designer : an eclipse plugin allowing to be quickly operational on GWT
  • Google Gears : allow to manage (through the browser) an application in disconnected mode with a server and a database installed on client side. Moreover, it allows to make javascript multithreaded (which in not the case in standard) !
  • and many others …

GWT principles :

  • After initial loading of the page, GWT can work in disconnected mode (which means without any network connection)
  • Develop web applications in java (no javascript or html) : you use the JAVA syntax and a major part of its APIs (but not all)
  • Compile in javascript : 1 file per browser, optimised for that one + compacted code (but there is a pretty mode for a formatted and readable code)
  • A simple static server is enough in general, Apache for example
  • Can encapsulate an existing javascript library : for that purpose, the ‘native’ keyword, combined with a special format for comments, allows to define a javascript function to use in the compilation phase
  • Provides an API to manage browser history. That allows to make bookmarkable applications despite the fact that, by definition, a GWT application is a single page one.
  • Manages internationalisation => the compilation generates one javascript file per browser and per language
  • Compatible with JUnit for business process side and (almost compatible) with Selenium for the HMI side
  • Support of java 5 since GWT 1.5

Advantages :

  • well integrated in the existing ecosystem, especially because it’s the JAVA syntax
  • Ajax (and so gwt) allows to reduce workload on the server : the workload is reported on the client (browser), especially because there is no session persistance on the server.

concurrent products :

Remark : As GWT applications are represented by a single page, you must rethink the HMI ergonomy of traditional web applications.

Second part : Restlet-GWT

  • REST completely defines a web architecture and is based on existing things, for example the http protocol (with its GET, POST, PUT, DELETE requests). For more informations, consult that article on the ‘journal du net’ or that one on wikipedia. Advantage : A Swing and a GWT application can share a big part of the backend thanks to REST
  • Restlet : it’s an open source implementation of REST in java. The version 1.1.0, named Restlet-GWT, is the first stable version of the GWT portage.
    • unified API on server and client side : that allow to learn/use many APIs (javamail, http, jdbc, …)
    • independant of the servlets but can be integrated in that kind of container. There is a standalone deployment but it remains client/server.
    • expose ressources (through an uri) and adapt client side representation. Thus, with http, we use content negociation to know what kind of representation is supported by the client. Example : Firefox say it prefers html or else xhtml.

For more informations, have a look at paris JUG site

Be Sociable, Share!
Share and Enjoy

Write a comment





If your website is claim enabled, it will be notified that you have posted here.

MySQL query error