Componente JTree

Oi! Estou a precisar de uma ajuda com o JTree…

Estou a fazer uma aplicação que lê ficheiros e depois usa esses ficheiros para os mostrar.
Um deles é uma lista de medicamentos que está ordenada por niveis. Por exemplo:
“1.Medicamentos Anti-infecciosos
1.1.Antibacterianos
1.1.1.Penicilinas
1.1.1.1.Benzilpenicilinas”
e assim sucessivamente.

eu tenho já algum código feito mas o resultado não é exactamente o que pretendo, não sei onde estou a errar.
Preciso de uma ajudinha…

private void criarArvore(){  
        LinkedList<Grupo> listGrupos = farmacia.getListGrupos();  
        LinkedList<Nivel> listNivel;  
        DefaultMutableTreeNode filho;  
        DefaultMutableTreeNode filhoN;  
        grupos = new DefaultMutableTreeNode("Grupos");  
          
        tree = new JTree(grupos);  
        for(Grupo g: listGrupos){  
            filho = new DefaultMutableTreeNode(g.getNome());  
            listNivel = g.getListNivel();  
            grupos.add(filho);  
              
            for(Nivel n: listNivel){  
                filhoN = new DefaultMutableTreeNode(n.getNome());  
                filho.add(filhoN);  
            }  
        }  
        jScrollPaneJTree.setViewportView(tree);  
        repaint();  
    }