Bonjour les amis,

je voudrais remplir dynamiquement un composant checkboxgroup à partir de la base de données,

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
 
 
 public String button1_action() throws SQLException, NamingException, ClassNotFoundException {
        // TODO: Process the action. Return value is a navigation
        // case name where null will return to the same page.
 
    int ss = Integer.parseInt(t1.getText().toString());
 
        Crmtype crm = new Crmtype() ;
        Vector v01 = (Vector)crm.getTypeById(ss);
        Enumeration e = v01.elements();
 
         for(int i=0;i<v01.size();i++){
 
 String est[] = new String[v01.size()];
        while (e.hasMoreElements()){
 
         crm = (Crmtype)e.nextElement();
 
         String tt[] = new String[]{String.valueOf(crm.getNum_type())};
          est[i] = tt[i];
 
               System.out.println(est[i]);
 
               cbg3.setSelected(new String[]{""+est[i]+""});
 
  		  }
 
             }
        return null;
    }
 
}
et voici mon bean :

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
 
 
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
 
package webapplication2;
 
import com.sun.webui.jsf.model.Option;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Vector;
import javax.naming.NamingException;
import util.ConnectionManager;
 
/**
 *
 * @author Rachid
 */
public class Crmtype {
 
    public int num_type;
    public String lib_type;
 
    public Crmtype() {
    }
 
    public Crmtype(int num_type) {
        this.num_type = num_type;
    }
 
    public Crmtype(int num_type, String lib_type) {
        this.num_type = num_type;
        this.lib_type = lib_type;
    }
 
 
 
 
    public String getLib_type() {
        return lib_type;
    }
 
    public void setLib_type(String lib_type) {
        this.lib_type = lib_type;
    }
 
    public int getNum_type() {
        return num_type;
    }
 
    public void setNum_type(int num_type) {
        this.num_type = num_type;
    }
 
 
 
 
public Vector getTypeById(int num) throws SQLException, NamingException, ClassNotFoundException
 
            {
Vector v1 = new Vector();
//Crmtype crmtype=null;
Connection connection = ConnectionManager.getInstance().getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet=statement.executeQuery("SELECT num_type FROM crm_visite_type WHERE num_visite=\'"+num+"\'");
while(resultSet.next())
	{
	v1.addElement(new Crmtype(resultSet.getInt("num_type")));
	}
		resultSet.close();
		statement.close();
	return v1;
	     }
 
 
 
          }
le peuplement du checkboxgroup se fait suit à l'exécution d'une requete select assuré par la méthode getTypeById(ss) avec paramètres d'entré fournis par le champ de texte.

le problème c'est que uniquement la case à cocher correspondante à la dérnière valeur du résultat est activée.... par contre la ligne d'affichage "System.out.println(est[i]);" renvoi les trois valeurs.

Donc je pense que le problème provient de mes tableaux est[] et tt[]

Merci d'avance pour votre aide.