Bonjour,
Je rencontre actuellement un problème dans le développement de mon application :
Normalement mon code devrait permettre de remplir ma celltable coté client via la serialization d'un tableau de données (requêtes sql) côté serveur.
Quand je fais ça de façon statique (en créant des élément à la main) pas de problème mais dans le cas contraire, une fois compilée, l'application m'affiche une barre de loading à la place des données.
code server side :
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 public Members[] getUser() throws IllegalArgumentException { Connection conn = null; // parameters String url = "jdbc:mysql://localhost/"; String db = "grbl"; String driver = "com.mysql.jdbc.Driver"; String user = "xxx"; String pass = "xxx"; Members[] res = new Members[10]; int i =0; int size = 0; //size of Users db table url = url + db; try { Class.forName(driver).newInstance(); conn = DriverManager.getConnection(url, user, pass); } catch (Exception e) { System.err.println("Mysql Connection Error: "); // for debugging error e.printStackTrace(); } if (conn == null) { System.out.println("~~~~~~~~~~ can't get a Mysql connection"); } Statement select = null; try { select = conn.createStatement(); ResultSet result=null; size = 10; //result.getRow(); i = 0; result = select.executeQuery("select * from user"); while (i<10){//) { result.next(); res[i].newMembers(result.getString(1),result.getString(2),result.getString(3)); i++; } return res; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return res; }
code client side :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 USERS=new ArrayList<Lgm.User>(); greetingService.getUser(new AsyncCallback<Members[]>() { @Override public void onSuccess(Members[] result) { for(int i=0; i< result.length;i++) USERS.add(new User(result[i].firstname,result[i].lastname,result[i].activity));
class Members :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 package fr.lgm.shared; import java.io.Serializable; public class Members implements Serializable { public String firstname,lastname,activity; public void newMembers(String firstname, String lastname, String activity) { this.firstname = firstname; this.lastname = lastname; this.activity = activity; } }
Si quelqu'un aurait une idée à ce sujet, merci.
Jérôme
(GWT 2.2.0 - Eclipse 3.6.1 - Win7 64)
Partager