Olá,
Criei uma pesquisa dinâmica que exibe o resultado num DataTable e coloquei um DataScroller para mostrar a paginação; defini o DataTable como rows=“10”. Ocorre que se uma pesquisa retornar 20 linhas e eu clicar na pg. 2 para analisar o resultado e novamente fazer outra pesquida que retorne 10 linhas, estas linhas da última pesquisa não irão aparecer porque o DataScroller permanece setado/clicado na pg. 2.
Se eu conseguir definir um DataScroller que exiba a pg. 1 como padrão o problema estará resolvido
Já fiz uma busca aqui no fórum e implementei algumas dicas, tais como: definir no DataScroller rendered="#{lstpesq.rowCount >10}", para somente exibir a paginação caso a quantidade retornada seja maior que 10. Isso não funcionou, não sei o motivo. Também já criei um método que retorna sempre o valor 1 como padrão, definindo a propriedade page do DataScroller como page="#{ctrl.scrollerPage()}", isso também não surtiu efeito.
Hoje o dataTable está assim:
<rich:dataTable id=“idtbModel” headerClass=“cabecalho” styleClass=“tabela” columnClasses=“col1x,col2x,col3x” style=“COLOR: #0000ff;” border=“1” cellspacing=“0” cellpadding=“2”
value="#{lstpesqemp}" var=“pesq” rows=“10” rendered="#{lstpesqemp.rowCount >10}" >
O DataScroller está desta forma: <rich:datascroller id=“scr” for=“idtbModel” renderIfSinglePage=“false” maxPages=“10” page="#{ctrl.scrollerPage()}" />
Utilizo JSF
Grato,
Mariano