Bem pessoal, to utilizando Richfaces com Facelets.
To tentando usar a propriedade do column filterBy, ta funcionando legal, filtra o meu datatable legal. O problema e que quando utilizao esta propriedade não consigo mais pegar uma linha correta na minha tabela para excluir ou alterar por exemplo, quando clico em qualquer linha, so pega a ultima linha, se eu tirar a propriedade ai funciona normalmente. Gostaria de saber se alguem ja passou por isso ou se pode ser um bug. Dei uma olhada na pagina do Richfaces mas não detectei nada.
Minha jspx
<?xml version="1.0" encoding="ISO-8859-1" ?>
<jsp:root xmlns:jsp="
http://java.sun.com/JSP/Page"
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">
<ui:composition template="/jsp/template.jspx">
<ui:define name="conteudo">
<a4j:form>
<table width="100%" align="right">
<tr id="lStatus">
<td colspan="2" align="right"><a4j:status id="commonstatus"
startText="PROCESSANDO ..." /></td>
</tr>
<tr id="lTitulo">
<td class="lTitulo" width="90%">
Assunto
</td>
<td align="right" width="10%"><h:outputLink style="float:right;"
value="javascript:Richfaces.showModalPanel('mpFormulario',{width:500, top:50})">
<h:graphicImage url="/imagens/icones/novo.png" border="0" />
<rich:toolTip>
<span style="white-space: nowrapcolor : #000;">
Novo Assunto. </span>
</rich:toolTip>
</h:outputLink></td>
</tr>
<tr id="lMensagens">
<td colspan="2"><rich:messages passedLabel="" layout="list">
<f:facet name="header">
<h:outputText value="Entered Data Status:"></h:outputText>
</f:facet>
<f:facet name="passedMarker">
<h:graphicImage value="" />
</f:facet>
<f:facet name="errorMarker">
<h:graphicImage value="/imagens/icones/cross.png" />
</f:facet>
</rich:messages></td>
</tr>
<tr id="lCorpo">
<td colspan="2">
<a4j:region>
<rich:dataTable styleClass="centralizar" width="400"
id="lstAssunto" style="margin: 0 right;" rows="10"
columnClasses="col" value="#{cadastroAssunto.todos}"
var="decorador">
<f:facet name="header">
<rich:columnGroup>
<rich:column width="1%">
<a4j:commandButton alt="Remover Todos" title="Remover Todos"
action="#{ cadastroAssunto.excluirTodos }"
image="/imagens/icones/cross.png"
reRender="lstAssunto, frmAssunto">
<rich:toolTip>
<span style="white-space: nowrapcolor : #000;">
Clicando aqui será possivel excluir todos os registros
marcados. </span>
</rich:toolTip>
</a4j:commandButton>
</rich:column>
<rich:column width="60%">
<h:outputText styleClass="headerText" value="Descrição" />
</rich:column>
<rich:column width="30%">
<h:outputText styleClass="headerText"
value="Setores que Utilizam este Assunto" />
</rich:column>
<rich:column width="9%">
<h:outputText styleClass="headerText" value="" />
</rich:column>
</rich:columnGroup>
</f:facet>
<rich:column style="text-align: center;">
<h:selectBooleanCheckbox value="#{ decorador.remover }">
<rich:toolTip>
<span style="white-space: nowrap;"> Marcando varios
será possivel a exclusão de varios registro de uma so vez.
Basta marcar o registro desejados e clicar no X vermelho. </span>
</rich:toolTip>
</h:selectBooleanCheckbox>
</rich:column>
<rich:column filterBy="#{decorador.object.descricao}"
filterEvent="onkeyup">
<f:facet name="header">
<h:outputText value="#{decorador.object.descricao}"></h:outputText>
</f:facet>
<h:outputText value="#{ decorador.object.descricao }" />
</rich:column>
<rich:column>
<f:facet name="header">
<h:inputText value="#{cadastroAssunto.filtro.setor.descricao}"
id="txtFiltroSetor">
<a4j:support event="onkeyup" reRender="lstAssunto"
ignoreDupResponses="true" requestDelay="700"
focus="txtFiltroSetor" />
</h:inputText>
</f:facet>
<a4j:repeat value="#{decorador.object.setores}" var="setor">
<h:outputText value="#{setor.descricao}" />
<br />
</a4j:repeat>
</rich:column>
<rich:column style="text-align: center;">
<a4j:commandButton alt="Editar" title="Editar"
action="#{ cadastroAssunto.atualizar }"
image="/imagens/icones/edit.png" onclick="javascript:Richfaces.showModalPanel('mpFormulario',{width:500, top:50})"
reRender="lstAssunto, frmAssunto">
<rich:toolTip>
<span style="white-space: nowrap"> Clicando aqui este
registro será excluido. </span>
</rich:toolTip>
</a4j:commandButton>
<a4j:commandButton alt="Excluir" title="Excluir"
action="#{ cadastroAssunto.excluir }"
image="/imagens/icones/bin.png"
reRender="lstAssunto, frmAssunto">
<rich:toolTip>
<span style="white-space: nowrap"> Clicando aqui este
registro pode ser editado. </span>
</rich:toolTip>
</a4j:commandButton>
</rich:column>
</rich:dataTable>
<rich:spacer height="10" />
<rich:datascroller for="lstAssunto" maxPages="10" align="center" />
</a4j:region></td>
</tr>
</table>
</a4j:form>
<!-- Listagem -->
<rich:spacer />
<ui:include src="formulario.jspx" />
<ui:include src="novosetor.jspx" />
</ui:define>
</ui:composition>
</jsp:root>