Google Web Toolkit 1.7
code.google.com
code.google.com
It doesn't tell you how to implement the back-end application though so it is not an application framework in that sense.
(I don't mean to pimp, but I have previously mentioned http://www.teampostgresql.com which we develop using GWT)
But it's not like Jaxer, since it doesn't provide a server-side component built in.
There is GWT code running on both the server and the client. That was what I meant in my comment.
GWT comes with tons of goodies that you probably haven't needed but Google or Yahoo or some other companies do need them.
GWT is basically a set of widgets and controls. It allows you to write Java code that generates a slick HTML/Javascript/AJAX frontend without having to worry much about things like requests and HTTP. It's a web development environment that feels more like a desktop environment.
In any case, it also solves the debugging problem because the whole thing is now in Java. Just use your Java debugger.
Is the backend also in Java then? So that debugging front and backend is all integrated? My impression from what I've read is that it is strictly front end Java to Javascript conversion, not both sides.
(in my original comment I could have been a bit clearer I suppose -- I currently find the pain in web app development to be debugging the interaction between the UI and the backend. I see how GWT can make UI development easier, but not the full stack)
The complete backend can be coded in Java. This of course you can debug even after you have compiled the entire front end of pure JS.
GWT also provides some useful data modeling techniques to exchange data between the server and client (basically an abstraction over AJAX).
I used to dislike the earlier versions of GWT because of its dependency on Java 1.2 and not being able to support the higher versions, but the current versions seamlessly compile Java 1.6 code and its awesome.
That makes it a private static final No go, for me.
I was just trying to say: I like the concept, but not enough to walk through java-hell for it.
So, talking about hopes, I hope pyjamas will mature to a point where it becomes a serious option.
You are approaching the problem from the perspective of deploying a new web-application.
GWT is good when you are approaching from an existing service and web-enabling it.
---
Further, some people like compile-time checks and the sophisticated IDEs.
With statically typed languages you can easily build an exhaustive list of all uses of something, where as dynamic/functional is much harder.
This makes changes and refactoring easier IMO.
This is not guaranteed in Java and C# -- someone might have used reflection somewhere. http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.ht...
So all in all, refactoring is still a lot easier.
Furthermore, GWT takes out Java reflection.