
Emacs can quite comfortably do debugging of Java applications running on remote JVMs using the excellent JDIbug.
JDEE provides two other means to debug applications, but I would recommend JDIbug any day of the week. It's fast and provides a visual tree of variables. Currently (2009-07-18 13:06), it has one drawback; it cannot debug inner classes, but I'm sure this is something that will be remedied in a later release.
Given that you have the given source code in the
jde-sourcepath
variable, you can browse the call
stack leading up to the break point. Here, I am browsing the
state of one of Tomcat's classes when executing my
test.jsp
If you are so inclined, you may browse my current JDIbug setup here, it might change from time to time.