bonjour tous les developpeurs, je suis entrain de m'entraîner pour avoir de la compétence en JSF !
voila mon problème: j'ai une liste de clients, si je coche sur un client dans checkbox alors la commande supprimer s'affiche (avant elle etait disabled car j'ai pas cocher aucune checkbox)!
==> c'est le premier problème
le deuxième probléme est que comment je peux supprimer ??
voia le code
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
 
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
 
package site;
 
import java.util.ArrayList;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;
 
/**
 *
 * @author noufal
 */
public class controller {
    private DataModel lemodel;
    private ArrayList<user> liste;
 
    public controller()
    {
   liste = new ArrayList();
    this.liste.add(new user("xxxx","yyy","3600"));
    this.liste.add(new user("xxxx","yyy","4500"));
    lemodel = new ListDataModel();
    lemodel.setWrappedData(liste);
    }
 
    public DataModel getLemodel() {
        return lemodel;
    }
 
    public void setLemodel(DataModel lemodel) {
        this.lemodel = lemodel;
    }
 
    public ArrayList getListe() {
        return liste;
    }
    public void setListe(ArrayList liste) {
        this.liste = liste;
    }
    public boolean getMarque()
    {   ArrayList lesclients = (ArrayList) lemodel.getWrappedData();
        for(int i=0;i<lesclients.size();i++)
            {
                user client = (user) lesclients.get(i);
                if(client.isSelectpoursupprimer()) return true;
            }
        return false;
    }
    public String suppression()
{
if(!getMarque()) return null;
    ArrayList lesclients = (ArrayList) lemodel.getWrappedData();
    ArrayList<user> nouveauxclients = new ArrayList();
for(int i=0;i<lesclients.size();i++)
    {
        user client = (user) lesclients.get(i);
        if(!client.isSelectpoursupprimer()) nouveauxclients.add(client);
    }
lemodel.setWrappedData(nouveauxclients);
return null;
    }
}
voila le code de la page :
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
<%-- 
    Document   : gestion
    Created on : 12 avr. 2011, 17:23:18
    Author     : noufal
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<c:view>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <center>
        <h:dataTable value="#{controller.liste}" var="client" border="3">
<h:column>
                <c:facet name="header">
                    <h:outputText value="Nom"/>
                </c:facet>
                <h:outputText value="#{client.nom}"/>
            </h:column>
            <h:column>
                <c:facet name="header">
                    <h:outputText value="prenom"/>
                </c:facet>
                <h:outputText value="#{client.prenom}"/>
            </h:column>
            <h:column>
                <c:facet name="header">
                    <h:outputText value="salaire"/>
                </c:facet>
                <h:outputText value="#{client.sal}"/>
            </h:column>
            <h:column>
                <c:facet name="header">
                <h:outputText value="supprimer"/>
                </c:facet>
                <h:selectBooleanCheckbox value="#{client.selectpoursupprimer}"  onchange="submit()" title="Cochez cette case si vous voulez supprimer cette personne"/>
            </h:column>
                <c:facet name="footer">
                    <h:commandButton   value="Supprimer"  action="#{controller.suppression}" disabled="#{not controller.marque}" />
            </c:facet>
            </h:dataTable>
       </center>
    </body>
</html>
</c:view>
Merci !