2
votes

Is there an open source, reference implementation of a simple, correctly designed, best practiced, GWT + GAE open source application? I would like to see the best practices on the following:

  • Recommended GWT Page navigation, session handling
  • GWT best practice UI (validation, controls etc)
  • Work with detached objects, conversations, wizards
  • Effective and "as intended" integration between GWT and GAE
  • MVC implementation with GWT and GAE, where is the controller? (Spring?)
  • Using domain POJOs in the UI without writing data transfer objects?
  • JDO (or JPA) and DAO layer - correct mapping, transaction and service layers
  • A permission layer, (e.g. like Spring security/ACEGI)
  • Integration with client side libraries (JQuery / Sancha)
  • JUnit layer for both server and client side

All the samples I found so far handled a very narrow aspect of the above, and I'm sure there has to be one good "starting point" such as the one's you can find for Spring / Hibernate or RoR projects

3
Seems GAE, GWT 2.1 have an official Spring integration! (with Roo as a Ruby like RAD tool) hm... does Roo stands for "Roo be"? or maybe a "Roo (wanna) be"? I wonder... - Eran Medan

3 Answers

1
votes

Unfortunately I don't know of any such reference implementation, and I don't think you're likely to find such an all-encompassing example is because:

  1. It's much easier to understand an example that focuses on one thing, like focusing on using JDO in a GWT app, or using Spring security in a GWT app, or how to do client-side validation in a GWT app. There's no reason one sample has to include such disparate features.
  2. In the same vein, what if I wanted this exact list of features in a reference implementation, but using something else instead of JDO? Should I expect someone to write everything all over again, with that one part replaced? It's much better to write samples and documentation for each piece of the puzzle and leave it up to developers to glue that knowledge together.
  3. Some of the things you listed aren't exactly common usages, e.g., integration with JQuery and Sencha. That's not to say it's not possible, and there are some (focused) examples out there if you look, but it's not the main use case for GWT developers, so I don't think it makes sense in a reference implementation.
  4. The sort of app you're talking about is very complex, something that would take multiple engineers months to write and then would have to be maintained and updated. All for a sample? Some people aren't willing to invest that kind of energy even when there's money involved!

That being said, there are some great GWT sample apps (with source available) here. Even though they don't encompass everything you listed, they'll hopefully be helpful.

1
votes

Have you looked at Roo?
This can be used to quickly build a GWT app based on one of a number of JPA providers and databases. It doesn't offer all the items listed but has quite a variety of optional add-ons

0
votes

There is a "Google App Engine Java and GWT Application Development" A code of the application they build during the book comes "Licensed under the Apache License, Version 2.0" so (I guess this is qualify as open source but IANAL) it worth looking at. At least it does helps me as I am working through the same set of questions. It written Nov 2010 so it is still relevant as Google Platform evolves at astonishing speed.

Declaimer - I got no relation to this book except that I am reading it.