salut tout le monde

j'ai une page jsp qui contient un code java me permettant d'afficher un lien sur la page selon la valeur d'un parametre, puis à l'ajout de chaque lien, je memorise le nombre de liens ajoutés grace à un compteur
si le competur>=2, j'affiche les autres liens en plus d'un lien different. rien de mechant jusuque là
voici le code java:
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
 
<% int compteur = 0;
 if (!ptd.equals("")) {%>
<label >${ptd} </label><a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=&loc=${loc}&sc=${sc}&t=${t}&mns=&mxs=">undo</a>                                            
 <%
    compteur++;
 } if (!scd.equals("")) {%>
     <label > ${scd} </label><a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=${pt}&loc=${loc}&sc=&t=${t}&mns=&mxs=">undo</a>
     <%
     compteur++;
      } if (!locd.equals("")) {
         %>
        <label > ${locd} </label><a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=${pt}&loc=&sc=${sc}&t=${t}&mns=&mxs=">undo</a>
         <%
           compteur++;
         }
         if (!td.equals("")) {%>
         <label > ${td} </label><a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=${pt}&loc=${loc}&sc=${sc}&t=&mns=${mns}&mxs=${mxs}">undo</a>
         <%
         compteur++;
         } if (!mnp.equals("") && !mxp.equals("") && !prd.contains("0-max")) {%>
 <a href="${url}&mnp=&mxp=&pt=${pt}&loc=${loc}&sc=${sc}&t=${t}&mns=${mns}&mxs=${mxs}">undo</a>
  <%           compteur++;
 } if (!mns.equals("") && !mxs.equals("") && !sfd.contains("0-max")) {%>
    <a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=${pt}&loc=${loc}&sc=${sc}&t=${t}&mns=&mxs=">undo</a>
    <%           compteur++;
    } if (compteur >= 2) {%><a href="${url}&mnp=&mxp=&pt=&loc=&sc=&t=&mns=&mxs="> supprimer tous les liens</a>
 <%}%>
pour alleger la page, j'ai voulu convertir ce code en utilisant les tags c:if de la jstl
voici la version avec la jstl:

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
 
<c:set var="compteur" value="0" scope="request"/>
 <c:if test="${!empty pt}">
  <label >${ptd} </label><a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=&loc=${loc}&sc=${sc}&t=${t}&mns=&mxs">undo</a>
  <c:set var="compteur" value="${compteur+1}" />
 </c:if>
 <c:if test="${!empty sc}">
 <label > ${scd} </label><a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=${pt}&loc=${loc}&sc=&t=${t}&mns=&mxs">undo</a>
 <c:set var="compteur" value="${compteur+1}" />
  </c:if>
<c:if test="${! empty locd and locd ne '*'}">
<label > ${locd} </label><a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=${pt}&loc=&sc=${sc}&t=${t}&mns=&mxs">undo</a>
<c:set var="compteur" value="${compteur+1}" />
</c:if>
<c:if test="${!empty mnp and !empty mxp and prd ne '0-max'}">
<a href="${url}&mnp=&mxp=&pt=${pt}&loc=${loc}&sc=${sc}&t=${t}&mns=${mns}&mxs=${mxs}">undo</a>
<c:set var="compteur" value="${compteur+1}" />
</c:if>
<c:if test="${!empty mns and !empty mxs and sfd ne '0-max'}">
<a href="${url}&mnp=${mnp}&mxp=${mxp}&pt=${pt}&loc=${loc}&sc=${sc}&t=${t}&mns=&mxs=">undo</a>
 <c:set var="compteur" value="${compteur+1}" />
</c:if>
<c:if test="${compteur >= 2}">
<a href="${url}&mnp=&mxp=&pt=&loc=&sc=&t=&mns=&mxs">supprimer tous les liens</a>
</c:if>
mon probleme est qu'avec la premiere version, le code marche à merveille,
mais dans la 2ème version la variable compteur reste toujours=1 et le code ne m'affiche qu'un seul lien

des idées?
merci d'avance