Linha da scrollableDataTable {RESOLVIDO}

3 respostas
victormenegusso

Olá estou tentando obter a linha selecionada de uma scrollableDataTable pelo atributo chamado selection, este atributo tem que ser uma lista da estrutura que eu tenho ?

minha tabela:

<h:form id="form">
		<rich:scrollableDataTable height="400px" width="700px" value="#{BeanTeste.lista}" var="item" rows="5"
		selection="#{BeanTeste.noselects}">
			<rich:column>
				<f:facet name="header">
					<h:outputText value="nome"/>
				</f:facet>
				<h:outputText value="#{item.nome}"/>
			</rich:column>
			<rich:column>
				<f:facet name="header">
					<h:outputText value="end"/>
				</f:facet>
				<h:outputText value="#{item.end}"/>
			</rich:column>
        </rich:scrollableDataTable>
		<a4j:commandButton value="R " action="#{BeanTeste.removerlinha}" reRender="Remove"/>
	</h:form>

3 Respostas

victormenegusso

ninguem ? é que eu não encontrei um exemplo no site do richfaces de como pegar a linha selecionada :frowning:

victormenegusso

estou tentando fazer assim oque a key esta retornando um indice que não contem na lista

public void removerlinha()
{
	   
         Iterator<Object> iterator =  getSelection().getKeys();
         while (iterator.hasNext()){
              Object key = iterator.next();
              this.noselects.add(this.lista.get(Integer.parseInt(key.toString())));
         }
}
victormenegusso

Aee resolvi, segue o metodo

public void removerlinha()
{
		Object indice = null;
		Iterator<Object> iterator =  getSelection().getKeys();//pega o indice das linhas selecionadas
		while (iterator.hasNext())
		{
			indice = iterator.next();
			this.lista.remove(Integer.parseInt( indice.toString() ) );
		}
}
Criado 17 de dezembro de 2010
Ultima resposta 20 de dez. de 2010
Respostas 3
Participantes 1