EclipseUML free or Studio editions are certainly the most advanced Java
reverse engineering tool on the market.
I have written few tutorials on this subjects.
1. How to reverse a java project using EclipseUML (3 minutes flash
tutorial) http://www.ejb3.org/reverse.swf
2. Why EclipseUML is the best :
http://www.tutorial-omondo.com/reverse/index.html
3. Log4j reverse HTML documentation (this is my 2003 tutorial, but it is
still Ok for reverse :-) available at:
http://www.tutorial-omondo.com/log4j/index.html