Bonjour à tous et à toutes!
Je ne sais pas trop comment lancer mon sujet donc je vous serais gré de bien prendre en considération cela!
Alors, j'ai un projet web qui a vécu avec une certaine architecture et je voudrais migrer petit à petit les traitements clients (Javascript) avec GWT. Évidemment je souhaite ajouter un peu d'ajax histoire de rendre l'application un peu plus sympa...
Pour simplifier la chose mon projet s'apellera {monProjet}
le "root package" sera {com.root.package}
Donc! J'ai des servlets, des jsp et je veux ajouter GWT.
J'ai commencer par ajouter au buildpath :
gwt-dev.jar
gwt-servlet.jar
gwt-user.jar
Ensuite j'ai ajouté un "EntryPoint". J'ai donc crée une classe dans {com.root.package}.client
qui ressemble à ceci :
Ensuite je crée mon fichier {monProjet}.gwt.xml que je met dans {com.root.package} et qui ressemble à ceci :
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 package {com.root.package}.client; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.event.dom.client.ChangeEvent; import com.google.gwt.event.dom.client.ChangeHandler; import com.google.gwt.user.client.DOM; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.ListBox; public class MyEntry implements EntryPoint { @Override public void onModuleLoad() { ListBox listBox = ListBox.wrap(DOM.getElementById("sensSelect")); listBox.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent arg0) { Window.alert("Mon alerte elle marcheu!"); } }); }
Enfin je modifie ma jsp pour que le tout soit cohérent. Cette jsp se trouve dans {monProjet}/web/Templates/maJsp.jsp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?xml version="1.0" encoding="UTF-8"?> <module rename-to='{com.root.package}.client.MyEntry'> <!-- Inherit the core Web Toolkit stuff. --> <inherits name='com.google.gwt.user.User'/> <inherits name='com.google.gwt.user.theme.standard.Standard'/> <!-- Specify the app entry point class. --> <entry-point class='{com.root.package}.MyEntry'/> </module>
Mais évidemment cela ne fonctionne pas!
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 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>My First GWT applicaton</title> <script type="text/javascript" language="javascript" src="{com.root.package}.client.MyEntry.nocache.js"></script> </head> <body> <h1>My First GWT applicaton</h1> <select id="sensSelect" name="sensSelect"> <option value="1">Droite</option> <option value="2">gauche</option> </select> </body> </html>
Auriez vous une explication et une aide à me fournir pour comprendre le pourquoi de la chose?
J'ai un peu simplifier le problème car en fait la jsp est composée de frame et le select est dans l'une de ces frames.
Je vois grace à firebug que le script js {com.root.package}.client.MyEntry.nocache.js n'est pas trouvé mais je ne sais pas trop comment il peut le trouver vu que je ne l'ai pas créée.
Je me suis basé sur l'article dispo ici http://www.vogella.de/articles/GWT/article.html
pour faire tout ce que j'ai fait actuellement.
En espérant que quelqu'un voit où j'ai fait une ou des boulettes ^_^
Merci!
Partager