dataTable em JSF

Tenho um Cadastro de Computadores organizado da seguinte forma: UNIDADES, DIVISÕES e dados individualizados de cada computador, como processador, memória, clock, etc. Pois bem, dentro de cada UNIDADE tem-se DIVISÕES específicas, e para cada DIVISÃO todos os computadores cadastrados.

Gostaria de exibir na tela do JSF uma tabela, inicialmente apenas com as UNIDADES. Ao clicar sobre uma unidade, a tabela se atualizaria dinamicamente, e mostraria as DIVISÕES correspondentes. Finalmente, um outro clique sobre a DIVISÃO mostraria todos os computadores cadastrados. O efeito é semelhante ao do Tree View, exceto que ocorre dentro de uma tabela. Os cliques nos links (nomes de unidade e divisão) deverão ter actionListeners para modificar uma variável booleana que será o binding do rendered.

O JSF dificulta muito o trabalho com esse tipo de lógica. Logo, alguém já fez isso, ou tem alguma sugestão? Obrigado.

Faça uma inner class que contenha um ArrayList, depois crie outro Array com o tipo ref. a sua inner class. Assim para cada posição do Array pai você terá um outro array filho, que pode ser colocado nesta segunda lista. Para clicar sobre os ítens da primeira tabela utilize um <h:commandLink />.

Exemplo básico:

public class ClassePai{

private ArrayList<ClasseFilha> lista = new ArrayList<ClasseFilha>();

public ArrayList<ClasseFilha> getFilhaList(){
return lista;
}

//métodos addLista
//metodo removeLista

public class ClasseFilha{

private ArrayList<Tipo> listaFilha = new ArrayList<Tipo>();

//métodos add, remove, getList

}

}

e por aí vai

Um abraço