I have been using Swing since the 90 's. The reason I love Swing is that it can fulfill all your ideas. For me, this is the wonderful thing about developing software: Being able to realize what you think on the screen. With the Swing API, you can easily use a wide variety of applications, from drag-and-drop tools to arcade games, omnipotent.
Then, the advent of primitive frameworks such as server-side Java and Struts has allowed software development to go back to the the 1960s level, and they can only resemble mainframe forms. Without drag-and-drop operations, no arcade games, no fun, we feel like we're back in the Stone age of programming.
That's why I love Google Web Toolkit. By using this Swing-like API, you can once again implement any conceivable functionality in your browser. Of course, the situation with the WEB application framework has changed dramatically since Struts 1.0, and with the JSF 2, Ruby on Rails and Lift frameworks, the functionality that developers can implement is no longer limited to mainframe-like forms. However, GWT is still unmatched by other frameworks, allowing developers to play the powerful functions of JavaScript through familiar languages and APIs. If you want to implement a desktop-like application in your browser, GWT is a great choice to consider, at least on the client side.
In this series of articles, I'll implement a desktop-like application that lays the groundwork for your GWT learning path. The content of this article includes:
Widget (Widgets)
Remote Procedure Call (Sqlremote procedure CALLS,RPC) and database integration
Composite Widget
Event handlers
Ajax Test
In part 2nd, I'll discuss how to implement custom widgets in more detail, as well as some advanced techniques such as using event previews and animated images in timers. You can download the source code and get the complete sample application.
Places: A WEB service mashup that supports Ajax and databases
I will use GWT to build a places application that can be used to view locations (places). I define the location as a combination of a map of a particular location and weather information, as shown in Figure 1:
Figure 1. Places application: View a location