A little while ago I got interested in web applications done in Java. First though was to look at something Tomcat like based on the Java Servlet API. After a while of experimenting, I found it all a tad cumbersome and looked around to other things. Eventually, I wrote my own little web framework (the Little Portal Gizmo) that I am toying about with these days.
Writing a web application with the Gizmo is writing one or more Eclipse plug-ins. The Gizmo itself consists of a handful of plug-ins which implement the HTTP protocol side of things, give you the rendering engines you can use to render your pages, etc. — all the glue-work if you wish.
Running a Gizmo web application means creating a Run Configuration and clicking the “Run” button.
Debugging a Gizmo web application means clicking the “Debug” button with that same run configuration.
This works like a charm. All the goodness of hot-code-replace and the like works just as with any other Eclipse project. Nice. You stop and restart your application in a jiffy. What you develop is what you debug without explicit deployment steps.
I have been trying to find out how people debug their Servlet API web applications when they e.g. develop in Eclipse using Tomcat. Do you normally deploy and run/debug remotely? This is what I have found most — see here on the Tomcat Wiki. Are people happy with this? I would imagine the turn around between two debug runs can get a bit tedious? Today I came across this Tomcat web application debugging description which seems closer to what I do with the Gizmo as described above. Do people in general do this kind of thing?
How do you debug when developing web applications with Tomcat? Am I missing the point?