Sunday, August 1, 2010

Re: Development time for GWT apps versus 'traditional' MVC with JSP

Hi Julius,

I'd believe that speed takes up as you probably run over many problems
due to a paradigm shift: GWT programming is much like desktop app
programming (like in AWT) and much less like web application
programming.
Concerning security, I think you are right: you have to implement
checks before each method and limit the method to change the desired
data as soon as you have more than one user group. An alternative to a
check could be a security configuration in the web.xml for one service
servlet, but the effect is the same.
Concerning data binding / presenters I have to admit that I never used
the MVC approach suggested by google but rather subclassed Panels to
be data holders for a certain domain object, i.e. get/setPerson() on
the panel becomes feasible. With read/save methods cascading along
panels, quite a lot of flexibility can come in. Certainly, this goes
in the same direction as google's approach - and generally, you can
load and set data (in whole or in parts) at any time using the object
model.

Maybe it helps to just see the development efforts as desktop app
development; and to cut down on the patterns and frameworks used for
the first app...

Good luck and best Regards
Sebastian Rothbucher

On 31 Jul., 19:18, Julius <julius.kle...@gmail.com> wrote:
> Hi,
>
> 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:http://code.google.com/webtoolkit/articles/mvp-architecture.html
>
> 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
>
> Security:
> - 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.
>
> Retrieving text:
> - 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
> screen.
>
> Serializing data
> - 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.

--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.

No comments:

Post a Comment