The Rich Web Client conundrum
Rich Web based applications are far from "new", but there still doesn't seem to be a general consensus on how they should be constructed. To the contrary, there are a dizzying array of options for constructing both the client and the server parts of the equation. Perhaps it will help to review the basics...
In reality, there are only three options for implementing the client-side of a Rich Web UI...
Simprit Swing 1.1 - Swing components lib
Simprit Swing is an addon package for Java Swing. It enhances Java Swing components and provides new Swing components like link button, tool bar pane (container of multiple tool bars), calendar pane, date picker, text fields, etc.
Servlets: Tons of Funneling and Tunneling Fun
Sometimes when developing a server-side application, a time arises to consider client-side interfaces (thin clients), whether it be through Java web start, an applet, or a standard application the users install on their machine. Centralized data (data on the server) is still a must however, and that means that you have to find a way to get data down to the client applications from the server.
To MDI or not to MDI?
I often hear programmers complain that Swing does not support true MDI. As of yet, SWT doesn't support MDI at all, although the SWT project has said that they fully intend to add MDI support. However, I don't se
1f40
e what the big deal is. If you find yourself wanting to use MDI in today's world, then you are probably doing something wrong and should rethink your UI design...
Using JConsole to Monitor Applications
JConsole is a Swing-based application introduced in J2SE 5.0 that uses the extensive instrumentation of the Java virtual machine to provide information on performance and resource consumption of applications running on the Java platform. This article by Mandy Chung (who designed and implemented the VM monitoring and management interface in JDK 5.0) describes the monitoring and management architecture, how JConsole plugs into it, and how to use JConsole to perform such tasks as detecting deadlocks and controlling the log level.