Problème :
Lors du lancement de mon application, j'ai l'erreur suivante :
Loading modules
de.toolforge.googlechartwrapper.googlechartwrapper
[ERROR] Unable to find 'de/toolforge/googlechartwrapper/googlechartwrapper.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?
[ERROR] shell failed in doStartup method
Cependant, je n'ai aucune référence à ce module dans mon code (C'est un module que j'ai effacé).
Solution :
Run -> Run Configurations
Puis il faut aller dans votre application google dans l'onglet Arguments.
Il faut ensuite effacer le module qui pose problème.Dans mon cas : de.toolforge.googlechartwrapper.googlechartwrapper
Un petit blog principalement sur l'univers du développement pour partager aussi bien des astuces pratiques utiles au quotidien mais également réfléchir sur les évolutions et perspectives de l'informatique.
Affichage des articles dont le libellé est GWT. Afficher tous les articles
Affichage des articles dont le libellé est GWT. Afficher tous les articles
vendredi 19 août 2011
jeudi 18 août 2011
GWT : Erreur de compilation avec une Map
Problème :
Dans votre code, vous déclarez Map<Integer, Integer> map = new HashMap<Integer, Integer>
et lors de la compilation vous avez l'erreur suivante :
[ERROR] Line 23: No source code is available for type com.google.gwt.dev.util.collect.HashMap<K,V>; did you forget to inherit a required module?
Solution :
Les collections du tpe Map fonctionne avec des Objects.Or la class Object n'est pas serializable.
Il faut donc créer une classe qui va contenir votre map en lui passant @gwt.typeArgs <java.lang.Integer,java.lang.Integer>
dans les commentaires pour définir ce que va contenir votre map :
public class ChartData implements IsSerializable {
/**
* This field is a Map that must always contain Strings as its keys and
* values.
*
* @gwt.typeArgs <java.lang.Integer,java.lang.Integer>
*/
public Map data;
public ChartData() {
}
}
Ensuite vous pouvez utiliser votre map comme ceci :
CharData charData = new CharData();
charData.data.put(12,13);
Référence :
http://www.gwtapps.com/doc/html/com.google.gwt.doc.DeveloperGuide.RemoteProcedureCalls.SerializableTypes.html
mardi 16 août 2011
[WARN] Candidate class for JDOQL single-string query (Class) could not be resolved Class
Problème :
[WARN] Candidate class for JDOQL single-string query (User) could not be resolved User
Solution :
Je n'avais pas encore instancié ma classe User.En fait, J'appelais ma méthode avec une fonction statique comme ceci :
User.myMethod();
Et dans my Method, je faisais ma requête :
PersistenceManager pm = PMF.get().getPersistenceManager();
Query query = pm.newQuery(User.class);
Pour résoudre le problème, j'ai fait ceci :
User myUser = new User();
myUser.myMethod(); // myMethod n'est plus statique
vendredi 12 août 2011
Comment logger avec GWT ?
Dans votre fichier test.gwt.xml file, il faut ajouter :
<inherits name="com.google.gwt.logging.Logging"/>
<set-property name="gwt.logging.logLevel" value="INFO"/> # To change the default logLevel
<set-property name="gwt.logging.enabled" value="TRUE"/>
Dans votre fichier java :
- Import du logger :
import java.util.logging.Logger;
- Déclaration de la variable logger :
private static final Logger logger = Logger.getLogger(WeightManager.class.getName());
- Appel des méthodes de logs :
logger.info("========>TEST !!!!");
Remarque : Cela fonctionne uniquement dans la partie client.Je ne sais pas encore comment faire des logs dans la partie server.
Remarque : Cela fonctionne uniquement dans la partie client.Je ne sais pas encore comment faire des logs dans la partie server.
mardi 26 janvier 2010
GWT : Qu'est ce que Google App Engine
Si vous voulez avoir plus de détails sur Google App Engine, il y a un article sur le magazine gratuit de developpez.com : magazine
vendredi 4 décembre 2009
GWT [ERROR] No source code is available for ...GWTTestCase
Problème :
Vous rencontrez l'erreur suivante :
[ERROR] Line 11: No source code is available for type com.google.gwt.junit.client.GWTTestCase;
did you forget to inherit a required module?
Solution :
Dans le fichier de module (*.gwt.xml), il suffit d'ajouter :
"< name="com.google.gwt.junit.JUnit">"
Vous rencontrez l'erreur suivante :
[ERROR] Line 11: No source code is available for type com.google.gwt.junit.client.GWTTestCase;
did you forget to inherit a required module?
Solution :
Dans le fichier de module (*.gwt.xml), il suffit d'ajouter :
"< name="com.google.gwt.junit.JUnit">"
vendredi 27 novembre 2009
Eclipse GWT_EXTERNAL_BROWSER
Problème :
Lorsque l'on compile en mode "hosted", on a l'erreur suivante :
[ERROR] Unable to find a default external web browser
[WARN] Try setting the environment variable GWT_EXTERNAL_BROWSER to your web browser executable before launching the GWT shell
Solution :
Dans Eclipse, il suffit de faire Run -> Run Configurations.Ensuite, on choisit le projet google et on
va à l'onglet Environement.Ensuite, on ajoute notre variable et on l'initialise à
GWT_EXTERNAL_BROWSER avec la valeur firefox.
Lorsque l'on compile en mode "hosted", on a l'erreur suivante :
[ERROR] Unable to find a default external web browser
[WARN] Try setting the environment variable GWT_EXTERNAL_BROWSER to your web browser executable before launching the GWT shell
Solution :
Dans Eclipse, il suffit de faire Run -> Run Configurations.Ensuite, on choisit le projet google et on
va à l'onglet Environement.Ensuite, on ajoute notre variable et on l'initialise à
GWT_EXTERNAL_BROWSER avec la valeur firefox.

vendredi 20 novembre 2009
GWT Ressources statiques (fichier css, js...) et Répertoire public
Problème
Je commence l'apprentissage de GWT et le premier problème que j'ai rencontré concerne les ressources statiques.Où faut-il les mettre ? Où mettre les css,js ... ? Sur le web, j'ai touvé qu'il fallait les mettre dans le répertoire public. Où mettre le répertoire public ?
Solution
Il faut créer un répertoire qui se nomme public au même niveau que le fichier *.gwt.xml.
Dans mon exemple, c'est dans src/com/google/gwt/sample/stockwatcher que l'on crée le répertoire public (cf image ci-dessous).
Ensuite à l'exécution il sera automatiquement copié dans le war.Il suffira alors de modifier le fichier html pour lui indiquer où sont les ressources :
"<"link type="text/css" href="stockwatcher/css/start/jquery-ui-1.7.2.custom.css rel="Stylesheet"">"
"<"script type="text/javascript" language="javascript" src="stockwatcher/js/jquery-1.3.2.min.js""/" "<"script type="text/javascript" language="javascript" src="stockwatcher/js/jquery-ui-1.7.2.custom.min.js""/>"
Voici un exemple concret (cliquez pour agrandir) :

Inscription à :
Articles (Atom)