Thursday, August 18, 2011

GWT : compilation error with Map

Problème :

         In your code, you declare Map<Integer, Integer> map = new HashMap<Integer, Integer>
and you have the following error  :

         [ERROR] Line 23: No source code is available for type<K,V>; did you forget to inherit a required module?

Solution :

Map collections works with Object.However Object isn't serializable.So to work, you have to pass the following arguments in comments :@gwt.typeArgs <java.lang.Integer,java.lang.Integer>
to define the contents of your 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() {

Then you can use your Map like that :

CharData charData = new CharData();,13);

Ref :