Bonjour,

Je suis débutant en GWT , donc vous sera surement surpris par la stupidité de mon codage.

Voilà , je veux mettre en place une grid GXT qui permet d'être personnalisé via un model , le probleme est que je veux charger mes données ( une table ) depuis la base de donnée via une methode qui comporte la requete, l'ors de l'appelle de cette methode (getAll() ) la liste des customers ( table ) est bien remplie car qu'on je fais un System.out.println() ça m'affiche une donnée d'un indice donné.

Maintenant je veux affecter cette liste à ma grid, hors la grid n'est pas reconnu dans le Handler du boutton qui permet de charger les données , IntellijIDEA (l'IDE avec le quel je travaille me demande de mettre la Grid en Final , si je fais ça , alors je ne peux plus mettre le new ... bon je vous montre le code.

à savoir que j'ai pensé à mettre le tous dans la methode de Handler mais si je veux mettre ' this.add(grd) ( grd = Grid ) et this c'est la classe qui hérite de LayoutContainer et qui comporte tous le traitement , mais si je met this il m'affiche une erreur comme quoi le this n'est pas reconnu au sein de la methode Handler .. que faire ! ne vous souciez pas du code qui permet de récuperer les données il est bien fonctionnel mais en revanche comment appliquer ceci à la grid .. voilà la classe qui traite tous ça :
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
public class CustomerGridPanel extends LayoutContainer
{
 
    Grid<CustomersBean> m_grdPersonModel = null;
    ListStore<CustomersBean> m_lstPersonModel = null;
    Button m_btn = null;
 
    public CustomerGridPanel ()
    {
 
        final List<ColumnConfig> configs = new ArrayList<ColumnConfig> ();
 
        ColumnConfig column = new ColumnConfig ();
        column.setId ("Id");
        column.setHeader (KeysI.KSTR_CUSTOMER_ID_HEADER);
        column.setWidth (200);
        TextField<String> text = new TextField<String> ();
        text.setAllowBlank (false);
        column.setEditor (new CellEditor (text));
        configs.add (column);
 
        column = new ColumnConfig ();
        column.setId ("first");
        column.setHeader (KeysI.KSTR_CUSTOMER_FIRSTNAME_HEADER);
        column.setWidth (150);
        text = new TextField<String> ();
        text.setAllowBlank (false);
        column.setEditor (new CellEditor (text));
        configs.add (column);
 
        column = new ColumnConfig ();
        column.setId ("last");
        column.setHeader (KeysI.KSTR_CUSTOMER_LASTNAME_HEADER);
        column.setWidth (100);
        text = new TextField<String> ();
        text.setAllowBlank (false);
        column.setEditor (new CellEditor (text));
        configs.add (column);
 
        column = new ColumnConfig ();
        column.setId ("name");
        column.setHeader (KeysI.KSTR_CUSTOMER_NAME_HEADER);
        column.setWidth (100);
        text = new TextField<String> ();
        text.setAllowBlank (false);
        column.setEditor (new CellEditor (text));
        configs.add (column);
 
        column = new ColumnConfig ();
        column.setId ("phone");
        column.setHeader (KeysI.KSTR_CUSTOMER_PHONE_HEADER);
        column.setWidth (100);
        text = new TextField<String> ();
        text.setAllowBlank (false);
        column.setEditor (new CellEditor (text));
        configs.add (column);
 
        column = new ColumnConfig ();
        column.setId ("adresse");
        column.setHeader (KeysI.KSTR_CUSTOMER_ADRESSE_HEADER);
        column.setWidth (100);
        text = new TextField<String> ();
        text.setAllowBlank (false);
        column.setEditor (new CellEditor (text));
        configs.add (column);
 
        column = new ColumnConfig ();
        column.setId ("city");
        column.setHeader (KeysI.KSTR_CUSTOMER_CITY_HEADER);
        column.setWidth (100);
        text = new TextField<String> ();
        text.setAllowBlank (false);
        column.setEditor (new CellEditor (text));
        configs.add (column);
        // chargement des buttons 
        m_btn = new Button (" charger ");
        this.add (m_btn);
 
        // chargement des données
        m_lstPersonModel = new ListStore<CustomersBean> ();
 
 
        m_btn.addClickHandler (new ClickHandler ()
        {
 
            String str = "";
 
 
            public void onClick ( ClickEvent event )
            {
 
 
                MyGridApplicationService.App.getInstance ().getAll (new AsyncCallback<ArrayList<CustomersBean>> ()
                {
                    public void onFailure ( Throwable caught )
                    {
                        //To change body of implemented methods use File | Settings | File Templates.
                    }
 
                    public void onSuccess ( ArrayList<CustomersBean> result )
                    {
                        //To change body of implemented methods use File | Settings | File Templates.
                        if (result != null) {
 
                            //  for ( int i = 0; i < result.size (); i++ ) {
                            // adresse.setText (result.get (i).getCity ());
                            // m_lstPersonModel = new ListStore<CustomersBean> ();
                            m_lstPersonModel.add (new CustomersBean (result.get (5).getCustomerNumber (), result.get (5).getCustomerName (),
                                    result.get (5).getContactLastName (), result.get (5).getContactFirstName (),
                                    result.get (5).getPhone (), result.get (5).getAddressLine1 (), result.get (5).getCity ()));
 
 
 
                            System.out.println (m_lstPersonModel.getAt (1).getContactFirstName ());
 
                            System.out.println ("Liste result " + result.isEmpty ());
 
 
                        }
                    }
                });
            }
        });
 
 
        // fin de chargement
 
        ColumnModel columnModel = new ColumnModel (configs);
 
        columnModel.getColumn (0).setStyle ("background-image:url('cell.png');color:white;");
        columnModel.getColumn (1).setStyle ("background-image:url('cell.png');color:white;");
        columnModel.getColumn (2).setStyle ("background-image:url('cell.png');color:white;");
 
        final RowEditor<CustomersBean> re = new RowEditor<CustomersBean> ();
 
 
        m_grdPersonModel = new Grid<CustomersBean> (m_lstPersonModel, columnModel);
        m_grdPersonModel.setAutoExpandColumn (KeysI.KSTR_CUSTOMER_NUMBER);
        m_grdPersonModel.setBorders (false);
 
        m_grdPersonModel.setStyleAttribute ("borderTop", "none");
        m_grdPersonModel.setStripeRows (true);
        m_grdPersonModel.setColumnLines (true);
        m_grdPersonModel.setColumnReordering (true);
 
 
       this.add (m_grdPersonModel);
 
 
    }
}

CustomerBean est la classe qui mappe vers la table ..

à savoir que l'or de l'execution , la grid est bien afficher avec l'entête mais quand je clique sur le boutton ça ne m'affiche rien ( normal j'ai rien mis dedans sauf un simple system.out.println().. bref .!
J'aimerais que quelqu'un me répond svp c'est urgent .

Merci d'avance pour votre future aide..