Anyone know of a decent UML editor that
1) Can read and write java code; at least for class diagrams
2) Is cross platform
3) Is open source, at least free

I use Eclipse and Netbeans as my java IDE's if that matters.