What are your experiences regarding development time for rich internet
applications using GWT compared to the more traditional approach with
JSP and an MVC pattern?
I am currently developing a RIA with GWT using the MVP pattern
illustrated in this article from Google:
It took me some time to become familiar with the pattern, with the use
of UI Binder and with the general concept of sending back and forth
data between the client and the server through RPC.
Some of the questions that needed answering in our project so far and
that have cost us more time than initially planned are
- How to secure services that modify or delete data? Since these
services can be called directly from the client they need to be
properly secured. For each call we have to verify that the calling
user is registered in the database and has the rights to call the
service. In order to do this we changed the interface of important
services by requiring a valid session key as a parameter.
- We now use a servlet filter and go through this process for each
view that is loaded on the screen which causes quite a number of
requests. Ideally we'd do this only in the outermost view and pass
security parameters from the outer most presenter into the constructor
of inner presenters.
- When are we going to retrieve texts? Are we going to make a separate
call to the database for each presenter/view to load the texts for
that presenter/view? Or do we need a mechanism that loads the texts of
the entire screen in the outer most presenter, in our case the
presenter that belongs to the main grid that is the basis of each
- We use Hibernate for persistence and had to find a solution for the
fact that Hibernate proxy objects are not serializable and have to be
converted to serializable POJO's. This was one of the smaller issues.
At this moment developing our GWT application is taking us a lot of
time. Certainly a lot more than with a traditional JSP approach. I
understand that building an application with JSP results in a
traditional website, which is different from building a GWT
application, which is comparable to creating a desktop application
that runs in a browser. It is however taking us about twice as much
time to build the same functionality with GWT.
What are your experiences? Do you find it more time consuming to build
the same functionality with GWT compared to building it with JSP/PHP/
etc and a MVC pattern? We might just be struggling with the new
technology and I hope development spedd will pick up as the project
progresses, but right now, I am a bit disappointed about the larhe
number of hours we're burning answering all sorts of questions and
solving all sorts of problems we hadn't seen coming when we started.