Filter+Checkbox datatable

apos o update do botao atualizar na pagina deveria atualizar a tabela, porem por tem no filterby"algo digitado"…acaba mostrando a tabela com o numero de objetos selecionados na dataTable antes de chamar o botao e tabela em branco…como faço para limpar o que esta no FILTERBY""…???

Não precisa ressuscitar tópicos antigos
Qual o escopo do teu ManagedBean? Session?
Outra coisa, você tem certeza que “limpa” os atributos usados no filterby quando estes não são necessários?

escopo é @SessionScoped

entao vou tentar explica melhor o q estou fazendo, é esse exemplo

http://www.primefaces.org/showcase/ui/datatableRowSelectionRadioCheckbox.jsf + filter para a colunas

e pede para criar uma entidade assim para funcionar os selection com multiples(esta trazendo corretamente os getProductSeletion).

public class ProductsDataModel  extends ListDataModel<Products> implements SelectableDataModel<Products>{

    public ProductsDataModel(){
        
    }
    
    public ProductsDataModel(List<Products> data){
        super(data);
    }
    
     @Override
    public Products getRowData(String rowKey) {
        List<Products> produtos = (List<Products>) getWrappedData();
        
         for (Products p : produtos) {
             if(p.getPartNumber().equals(Long.valueOf(rowKey))){
                 return p;
             }
         }
         return null;
    }

o problema é que quan do eu executo o filter ele nao esta filtrando essa lista corretamente.

xhtml

<p:dataTable id="tableProdutos" value="#{pnMB.listDataModelProd}" var="q" emptyMessage="No Registry" 
                             paginator="true" rows="50" editable="true"
                              paginatorTemplate= " {CurrentPageReport}  {FirstPageLink} {PreviousPageLink} 
                               {PageLinks} {NextPageLink} {LastPageLink} 
                               {RowsPerPageDropdown}"
                               filteredValue="#{pnMB.listDataModelProdFilter}"
                               selection="#{pnMB.listDataModelProdFilter}" >  

                    <p:column selectionMode="multiple" style="width:2%" />

                    <p:column id="SegmentColumn" headerText="SEGMENT" filterBy="#{q.descSegment}" filterMatchMode="startsWith"
                              filterStyle="width: 40px;">
                        <h:outputText value="#{q.descSegment}"  />
                    </p:column>
:
:
:

Bean

private ProductsDataModel listDataModelProd;
    private ProductsDataModel listDataModelProdFilter;


public ProductsDataModel getListDataModelProd() {
         listDataModelProd = new ProductsDataModel(getListaProdutos());
         
        return listDataModelProd;
    }

public List<Products> getListaProdutos(){
        listaProdutos = new ArrayList<>();
        ProdutoDao pDao = new ProdutoDao();
        
        listaProdutos = pDao.retornaListaProdutos();        
        
        return listaProdutos;
    }


gets e sets...

obrigado

Você sabe como funcionam os escopos? SessionScoped, ViewScoped e RequestScoped?

não, diz ae como?

e isso ira afetar a parte da tabela do filtro??

[quote=b10machado]não, diz ae como?

e isso ira afetar a parte da tabela do filtro??[/quote]
Sugiro que leia o blog do hebert coelho aqui. Nele você encontra muita informação sobre isso.
Sugiro, também, pesquisar pela diferença entre eles.
Sim, irá afetar.

as outras paginas estão funcionando corretamente com o session

acredito que seja algo com o “var = q” da data table

 <p:column id="ativo" headerText="Ativo" filterBy="#{[b]q.getRowData(rowKey)[/b]}"  filterMatchMode="startsWith"
                              filterStyle="width: 40px;" >
                        <h:outputText value="#{[b]q.ativo[/b]}"/>
                    </p:column>

alguem???