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.
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
Inscription à :
Publier les commentaires (Atom)
Aucun commentaire:
Enregistrer un commentaire