I worry about large abstractions like this for a number of reasons.
All of this being said these stacks have some excellent features that you can draw on. In the case of GWT you can use all of the normal Java-debugging techniques and continue to develop in your IDE of choice (even including Eclipse integration). Additionally since the framework has full control (both client and server-side) it can selectively send parts of the codebase depending on the browser. This is very interesting and having this full stack for development makes it quite lucrative.
[js]var p = Processing(CanvasElement);
p.ellipse(50, 50, 50, 50);[/js]