Bonjour,

J'utilise le framework primefaces pour le développement d'une application web.

Dans une page, j'affiche un datatable avec paginator pour lequel je définis un spinner pour le nombre de lignes à afficher par page (je ne souhaite pas utiliser le rowperpage prévu).

Tout fonctionne très bien ... pourvu que je reste sur la première page ! plus rien ne fonctionne dès que je passe sur la page 2 ou 3 ou 4 etc ...
C'est comme si la valeur du spinner ne pointait plus vers le paginator ...

Toutefois, si j'actualise ma page par le navigateur, tout redevient normal quelque soit la page affichée !

MERCI pour votre aide

Voici mon code HTML :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
    <h:form id="form">
        
        <p:dataTable id="categorie"
                     var="cat"
                     widgetVar="lignesTable"
                     value="#{catalogManagerBean.listeLigne}"
                     rows="#{catalogManagerBean.lignesPage}"
                     paginator="true"
                     paginatorPosition="bottom"
                     paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {LignesParPage}">

            <f:facet name="{LignesParPage}">
                <p:spacer width="7"/>
                <p:spinner id="nombreLignes" value="#{catalogManagerBean.lignesPage}" min="1" max="99" maxlength="2" size="1">
                    <p:tooltip for="nombreLignes" value="Nombre de lignes par page" position="top" styleClass="bulle"/>
                    <p:ajax event="blur" update="categorie"/>
                </p:spinner>
            </f:facet>

            <p:column>
                <h:outputText value="#{cat.nomCategorie}"/>
                <p:spacer width="35"/>
                <h:outputText value="#{cat.nomProduit}"/>
            </p:column>

        </p:dataTable>
    </h:form>
Note : J'ai aussi essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<p:ajax event="blur" update="form"/>
mais sans succès.

Et ceci dans mon manager :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
   private int lignesPage = 15;