Melhor alternativa para múltiplos RowExpansion

Boa tarde.

Estou iniciando em desenvolvimento Java para Web e estou tentando desenvolver uma interface onde eu tenho 1 registro pai e múltiplos filhos e esses filhos também podem ter múltiplos filhos, por exemplo:

Registro Pai 1

  • Registro Filho 1
  • Registro Filho 2
    Registro Pai 2
  • Registro Filho 3
    • Registro Filho 5
    • Registro Filho 6
  • Registro Filho 4

E não teria limite para o número de filhos dentro deles mesmos.
Na verdade todos os registros são a mesma tabela a diferença é que eu tenho um atributo que vincula o Filho ao Pai dentro da mesma tabela.

Estou tentando desenvolver utilizando uma DataTable com RowExpansion, há uma forma de fazer ela se comportar e gerar os nodes de acordo com os registros da tabela, repetindo o DataTable e o RowExpasion?

Ou este não é o componente mais adequado para este tipo de layout?

Obrigado desde já.