<rich:columns></rich:columns>


<ui:composition xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:a4j="http://richfaces.org/a4j"
    xmlns:rich="http://richfaces.org/rich">
    <h:form>
        <rich:dataTable value="#{dataTableScrollerBean.model}" var="model" width="750">

            <f:facet name="header">
                <h:outputText value="Cars Available"></h:outputText>
            </f:facet>
            
            <rich:columns value="#{dataTableScrollerBean.columns}" var="columns"
                index="ind" id="column#{ind}" sortBy="#{model[ind].price}" sortOrder="#{columns.sortOrder}">
                 
                <f:facet name="header">
                    <h:outputText value="#{columns.header}" />
                </f:facet>
            
                <h:outputText value="#{model[ind].model} " />
                <h:outputText value="#{model[ind].mileage} miles " />
                <h:outputText value="#{model[ind].price}$"
                    style="font-style:italic;" />
                    
            </rich:columns>
            
        </rich:dataTable>
    </h:form>
</ui:composition>

Esse é o código de exemplo do site RichFaces, estou com duvidas em como fazer o Bean.

Alguém já usou está tag, preciso criar uma tabela com coluna dinâmicas.

Se alguém puder ajudar, obrigado!

Até mais.

Ajudar a gente até pode, mas qual sua dúvida? :slight_smile:

Preciso saber como é codificado o model, ainda estou tentando, pois onde está

<h:outputText value="#{model[ind].model} " />

não estou conseguindo fazer esse array no meu model, ou melhor não sei como ele é feito,
vou ter que ter uma lista com os nomes das colunas e depois os valores, mas não estou entendo por que
está em um array.

Não sei se consegui explicar minha dúvida.

era só um exemplo, o mais comum é usar uma implementação de List. Assim:[code]public class Pessoa{

private String nome;

private String sobreNome;

// getters e setters 

}

@ManagedBean(name = "bean)
public class MeuManagedBean{

private List<Pessoa> pessoas;

// getters e setters

}[/code] E na sua dataTable faz assim:[code]<rich:dataTable value="#{bean.pessoas}" var=“pessoa”>

<f:facet name="header">  
    <h:outputText value="Pessoas"></h:outputText>  
</f:facet>  
          
<rich:column style="text-align: left">
    <f:facet name="header">
        <h:outputText value="Nome" />
    </f:facet>

    <h:outputText value="#{pessoa.nome}" />
</rich:column>

<rich:column style="text-align: left">
    <f:facet name="header">
        <h:outputText value="Sobrenome" />
    </f:facet>

    <h:outputText value="#{pessoa.sobreNome}" />
</rich:column>

</rich:dataTable>[/code]

Tudo bem, mas é o problema não é esse, é que não sei quantas colunas vou precisar,
então pelo que estou lendo o [size=20]columns[/size] resolve isso, mas do jeito que você criou são duas colunas estáticas.

Obrigado!

Ainda estou tentando!