I'm working to learn some good frameworks (o set of frameworks/languages) for to build some RIA java based, not exclusively business-oriented ones. I'm at my start so excuse me for so general question.
Actually I've spent some time on GWT, and i like that philosophy. Problem is Java 8; I'm working with Java 8, and there is an incompatibility with GWT; I know is only matter of time to be resolved, but in the meantime i'm working around.
Now, I've understood (?) that GWT is the best for to build client-side RIAs but lack somewhere in the server-side aspect, and it probably need to be reinforced in some way. But what's means "reinforcing"? what can be the "good partner" server-side for GWT?
I've gived a look at Vaadin, but i don't like so much that philosophy: the Gwt idea to spare the elaboration load from server and client is winning, in my opinion, while in Vaadin, if i don't understand wrong, the elaboration is almost only server-side.
Now the question is: what is the best 2014 practice road? Only GWT ? GWT + server side add on's (and what addons?)? Vaadin? Or something different?
I think you must consider what you wish to do.
If you wish to stay with java, then a GWT based solution is great. GWT gives you many features and not much hassle with javascript.
If you need only client side application with not much server interaction this is a good choice. Of course you then need a server-part of your project.
Vaadin commes in, when you anyway have a server side solution, with much businesslogic, datalayers, background jobs etc. etc. Or when you don't wish to write GWT stuff yourself. (You still can if needed)
Your business logic is running on server side, the communication with the webbrowser is secured agains usual web exploits/attacks. (You would have to implement them yourself when using a own or xml/json based protocol)
Vaadin integrates client+serverside, without the need to hassle with GTW or Javascript.
So:
For projects with no (or not much) server side code (Business layer) go for GWT For all else go Vaadin