JSF 2.0 - Exportar para Excel

Galera, eu tenho um dataTable na minha tela e preciso exportar os dados para o Excel.
Vcs teriam algum exemplo para me ajudar?

Dá uma olhada em http://www.primefaces.org/showcase/ui/exporter.jsf

kra eu jah tive esse problema, e achei uma solução simples, do mesmo jeito que vc cria um arquivo de extensao .txt, vc alterar para .csv que e um tipo de arquivo pra tabela
funciona :


//para salvar a tabela de registros em um arquivo do tipo planilha
public void salvarRegistro () throws IOException {

    //seleciona o arquivo de BD
    File arq = new File("con_txts/"+prefix+".cfg");
    //int de chars
    int ch;
    //buffer para armazenar o texto e tratar
    String buffer = "";
    //pega o arquivo de entrada
    FileInputStream fin = null;
    String c;
    int countl = 0;
    String linhas = "";
    //caminho do arquivo
    String caminho;
    // nome do arquivo
    String nome;
    String cols[];


    try {
        fin = new FileInputStream(arq);

        //enquanto tiver char joga no buffer
        while((ch = fin.read()) != -1) {
            buffer = buffer + ((char)ch);
        }
               
        c = buffer.replace(";", "");
        countl = c.split("\\\n").length;
        
    } catch (Exception d) {
        System.out.println(d);
    }


    try {

        

        caminho = FileSaveR.getSelectedFile().getAbsolutePath();
        nome = FileSaveR.getSelectedFile().getName();
    
        FileWriter escrever = new FileWriter(new File(caminho + ".csv"),true);
        PrintWriter saida = new PrintWriter(escrever,true);



        cols = new String[countl];
        linhas = "";
        for (int fcol = 0; fcol < countl; fcol++) {

        if(fcol != 0) {
            linhas = linhas + ",";
        }
            linhas = linhas + col[fcol];
        }
        saida.println(linhas);

        for(int linha = 0; linha < TRegistro.getModel().getRowCount(); linha++) {
            linhas = "";
            
            for(int coluna = 0; coluna < countl; coluna++) {
                if(coluna != 0) {
                    linhas = linhas + ",";
                }                
                System.out.println(linha +"     " +countl);
                cols[coluna] = String.valueOf(TRegistro.getModel().getValueAt(linha, coluna));                
                linhas = linhas + cols[coluna];
                
            }
            
            saida.println(linhas);
        }
        saida.close();
        escrever.close();
        
        JOptionPane.showMessageDialog(null, "Salvo com sucesso!");

    } catch(Exception d) {
        System.out.println(d);

    }
}

neste trecho eu capturo as colunas de um arquivo texto que eu possuo que nao vem ao casoo que vc procura esta depois disso,
veja se ajuda a vc ter alguma ideia ou se isso serve!!!

Talvez o Apache POI faça isso.

Eu já usei esse exporter do PrimeFaces, é muito bom, aconselho usar ele.