dimanche 11 mai 2008

Rich Internet Application: Development Pet Store 2.0 using GWT and ExtJS.


Google Web toolkit(GWT) is a powerful technology provided by Google Inc, It allows Java developers to write AJAX-enabled web application in the Java programming language and generate a highly optimized JavaScript.

Ext JS, the Java script library for building rich internet application interested by GWT technology, provides an add-on library, EXT GWT, to let developers writing Ext JS components in Java.

In this article, I will show you the architecture used to add presentation components on the top of the Pet Store 2.0 persistence layer using Ext GWT and discuss how the communication between layers could be handled.


To build and run the sample, you need the following softwares:

Getting started:

To start developing Rich Internet application with Ext GWT, the first step is to write the entire application in Java programming language using Ext GWT library. GWT comes with an embedded browser and debugger, so you can run/debug your web application.

Note that all Java components will be converted as client side components into JavaScript language. Therefore, you can’t write server side components such as servlet in your GWT application, but you could write how the interaction with these components could be happened. GWT supports remote procedure call for passing Java objects to and from a server over http, so you can get/submit Data through RPC(Remote Procedure Call) or by http requests.

In this sample, we only use http Data Request to interact with server.

High Level Architecture Diagram:

To make it easier to understand RIA application development with Ext GWT, the diagram below details the architecture used for building this sample and for any kind of application using GWT.


In this article, we have seen together a kind of innovative architecture used for building RIA applications. This architecture is based on GWT to generate Ext JS components from Java code and use http requests to interact with server.



Aucun commentaire: