gwtproject / gwt

GWT Open Source Project
http://www.gwtproject.org
1.51k stars 372 forks source link

Why can't I define interface for overlay type lightweight collections? #7453

Closed dankurka closed 9 years ago

dankurka commented 9 years ago

Originally reported on Google Code with ID 7456

Found in GWT Release:2.4.0

I want to define an interface for lightweight collections as blow, but it can't be
compiled successfully. Any mistake here?

//...........................Interface...........................................

@SingleJsoImpl(JsArrayExtImpl.class)
public interface JsArrayExt<M>{

        public  void add(int addBefore, M model) ;
        .....
}

//................................Implementation

public class JsArrayExtImpl<M extends JavaScriptObject> extends JsArray<M> implements
   JsArrayExt<M>
{
  protected JsArrayExtImpl() { }

  @Override
  public final native void add(int addBefore, M model) /*-{
    this.splice(addBefore, 0, model);
  }-*/;
}
but got error:
Exception in thread "Code server for gwttest from Mozilla/5.0 (X11; Ubuntu; Linux x86_64;
rv:13.0) Gecko/20100101 Firefox/13.0.1 on ...GWTTest.html?gwt.codesvr=127.0.0.1:9997
@ SR;E74|oFVbz;?F%" java.lang.NullPointerException
at com.google.gwt.dev.shell.ModuleSpace.dispose(ModuleSpace.java:146)
at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:215)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363)
at java.lang.Thread.run(Thread.java:722)`

Reported by Alexander.Luya on 2012-06-27 02:15:31

dankurka commented 9 years ago
-Change----------------------
public class JsArrayExtImpl<M extends JavaScriptObject> extends JsArray<M> implements
   JsArrayExt<M>
-to--------------------------
public class JsArrayExtImpl<M> extends JavaScriptObject implements JsArrayExt<M>

It works

Reported by Alexander.Luya on 2012-08-05 06:50:27

dankurka commented 9 years ago

Reported by dankurka@google.com on 2013-05-27 18:17:05