When it comes to profiling applications, one of the most important feature to me is the ability to focus on what is important. The problem with Memdumps and Thread-traces is, that you´ll immediately face much more information you can handle, and the tool´s ability of helping you on your way drilling down through the data is the killer-feature a profiler can provide.
After some good experience with JProbe, i came across YourKit
and i am excited by its possibilities as well as its easy, intuitive and nice GUI. It seamlessly integrates with whatever your fav. JavaEE-Container might be, and it has many predefined filters to sharpen your view on code, you can control.
One flaw is in there. It assumes the JavaEE Container to be on the same platform in order to configure it automatically.
Never mind. It takes a minute to do it manually and have YourKit
profile your remote unix-glassfish from Windows.