GWT和Vaadin-变量不是构造函数堆栈

GWT和Vaadin-变量不是构造函数堆栈,gwt,vaadin,Gwt,Vaadin,我有一个奇怪的错误,我不能理解。下面是错误的一个片段: (TypeError): $wnd.EGeoXml is not a constructor stack: $jsInit([object Object],[object Object],null) 实际的代码行以GWT表示,如下所示: private native void jsInit(JavaScriptObject map, String kmlFile) /*-{ var exml = new $wnd.EGeo

我有一个奇怪的错误,我不能理解。下面是错误的一个片段:

(TypeError): $wnd.EGeoXml is not a constructor stack: $jsInit([object Object],[object Object],null)
实际的代码行以GWT表示,如下所示:

private native void jsInit(JavaScriptObject map, String kmlFile) /*-{
        var exml = new $wnd.EGeoXml("exml", map, kmlFile, {});
        this.@com.example.client.EGeoXmlJava::ready(Lcom/google/gwt/core/client/JavaScriptObject;)(exml);
    }-*/;
这段代码实际上在作为自己的GWT项目运行时可以工作,但是当将这段代码与Vaadin一起使用时,我得到了构造函数堆栈错误。我肯定构造器存在。我不明白的是为什么GWT认为它不是构造函数?提前感谢。

您将其命名为new$wnd.EGeoXml()。我觉得$wnd部分有点奇怪。有必要吗

无论如何,如果这只是Vaadin项目中的问题,您可能需要检查代码是否驻留在正确的包中。请记住,GWT希望代码位于名为.client的包中。Vaadin的服务器端类可以在任何地方