hola, yo también he estado buscando cómo realizar esto pero no he tenido éxito...Estos son los enlaces que he revisado.
http://www.apl.jhu.edu/~hall/java/Swing-Tutorial/Swing-Tutorial-JTree.html
http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html
https://sites.google.com/site/uhilger/artikel_index/boundtree
http://www.roseindia.net/java/example/java/swing/retrieving-jtree-structure-from.shtml
http://www.tek-tips.com/viewthread.cfm?qid=1218846&page=6
Hasta ahora no he tenido resultados positivos, y los problemas me han venido cuando los hijos del arbol tienen hijos a su vez(recursividad

) pero si tu tienes alguna idea o solucionas esto, por favor te agradecería mucho que postearas la solución.