Construindo <ice:dataTable> Dinamicamente com <ui:repeat>

3 respostas
jbbjunior

Olá pessoal, boa noite !

Estou tentando construir um ice:datatable dinamicamente com UI:REPEAT, mas somente está sendo criado o primeiro ice:DataTable, os demais nao.

Veja o código:

<ui:repeat var=“grupoInfoItemInfo” value="#{mbCadCondominio.listGrupoInfoItemInfo}">

<!-- DataTable -->
<ice:dataTable 
       var="listItens"
       value="#{grupoInfoItemInfo.itemInfoAdic}"					               
       scrollable="false"
       scrollHeight="150px"
       style="float:left"
       styleClass="tabela"
       headerClass="cabecalho" rows="5" columnClasses="ultimo,primeiro"
       columnWidths="100px, 50px"
       rowClasses="rowClassDef1, rowClassDef2"
       cellpadding="0">

    <ice:column>
        <f:facet name="header">
            <ice:outputText id="column1" value="Nome" style="font-size: 12px;"/>
        </f:facet>
        <ice:outputText style="font-size: 10px;" value="#{listItens}"/>
    </ice:column>

    <ice:column style="width:120px">
	<f:facet name="header">
	       <ice:outputText value="#{msgs['cadastro.label.acao']}" style="font-size: 12px;" />
	</f:facet>

	<ice:commandLink id="excluirlink" immediate="true" actionListener="#{mbCadCondominio.showModal}">
	       <h:graphicImage value="/imagens/edicao/delete.gif" style="border:0; background-color: transparent;" title="Excluir"/>
	</ice:commandLink>

     </ice:column>

</ice:dataTable>

</ui:repeat>

3 Respostas

jbbjunior

Resolvido !

Ygor

jbbjunior

Poste a solução utilizada, para que outras pessoas que tenham o mesmo problema também consigam resolver!

jbbjunior

Pessoal, o problema ocorre devido a maneira com o UI:Repeat trabalha com certos componentes. Eu acredito que logo logo o UI:Repeat vai estar compatível também com o dataTable, mas enquanto isto, achei uma explicação das diferenças entre o UI:Repeat x C:ForEach no link
http://www.ilikespam.com/blog/c:foreach-vs-ui:repeat-in-facelets

Então ao trocar o UI:Repeat por C:ForEach o problema foi resolvido !

Antes

<ui:repeat var=“grupoInfoItemInfo” value="#{mbCadCondominio.listGrupoInfoItemInfo}">

Depois

<c:forEach items="#{mbCadCondominio.listGrupoInfoItemInfo}" var=“grupoInfoItemInfo”>

Abraços e boa sorte pessoal !

Criado 25 de agosto de 2010
Ultima resposta 1 de set. de 2010
Respostas 3
Participantes 2