Features and usability of free, UML modeling tools in Java was a recent discussion topic on the Denver Java User Group's email list. I thought I'd share the recommendations, and provide links with more information.
Free UML modeling tools written in Java, in no particular order.
Import and export Java source. Exports/imports XMI files, so you can, for example, import a Rational Rose model (you lose the formatting, though). UML 1.3. Source code under BSD license. Supports multiple languages.
Import and export Java source. Import just makes the classes available for modeling. Supports UML 1.4.
Omondo EclipseUML Free Edition
An Eclipse plug-in for UML modeling. Eclipse Team support. Can create class and sequence diagrams from Java bytecode. Can model EJBs and servlets. Free version does not support Eclipse 3.0. UML 1.4. XMI support.
Visual Paradigm for UML
This full-featured product offers six versions, priced from free to $700. The free versions have some features disabled or limited. Integrates with nearly all Java IDEs.
Draws simple UML diagrams. Bare-bones program with small learning curve: no XMI, no reverse engineering, no validity checking. Source code available under GPL.
Other web sites with information about UML tools, including non-Java and non-free:
Did I leave out a great, free, Java UML tool? Please leave a comment and let me know.
Update Aug 15: I added Visual Paradigm for UML, pointed out to me by Mark Hayes.