GWT-自定义窗口小部件错误:无法读取未定义的属性“哈希”

masterdany88

我对GWT很陌生。我想扩展一些标准的小部件来满足我的需求。我创建了我的第一个小部件HorizontalTabs,该小部件扩展了GWT MaterialDesign的类(这是演示这是源),并且出现错误:Cannot read property 'hash' of undefined

这是视图代码:

public class HorizontalTabs extends Composite {

    private static HorizontalTabsUiBinder uiBinder = GWT.create(HorizontalTabsUiBinder.class);

    interface HorizontalTabsUiBinder extends UiBinder<Widget, HorizontalTabs> {
    }
 public HorizontalTabs() {
    initWidget(uiBinder.createAndBindUi(this));
    }
}

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
    xmlns:g="urn:import:com.google.gwt.user.client.ui" xmlns:m="urn:import:gwt.material.design.client.ui">
    <m:MaterialRow>
        <m:MaterialRow>
            <m:MaterialColumn grid="s12">
                <m:MaterialTab ui:field="tab" backgroundColor="blue" indicatorColor="yellow" waves="YELLOW">

                </m:MaterialTab>
            </m:MaterialColumn>
        </m:MaterialRow>
        <m:MaterialRow ui:field="tabContentRow">

        </m:MaterialRow>
    </m:MaterialRow>
</ui:UiBinder> 

要使用它,请将其添加到我的视图类之一,如下所示:

public class FilesView extends ViewWithUiHandlers<FilesUiHandlers> implements FilesPresenter.MyView {
    interface Binder extends UiBinder<Widget, FilesView> {}
    private static FilesViewUiBinder uiBinder = GWT.create(FilesViewUiBinder.class);
    interface FilesViewUiBinder extends UiBinder<Widget, FilesView> {}
    @UiField
    MaterialRow row;
    public FilesView() {
    initWidget(uiBinder.createAndBindUi(this));
    row.add(new HorizontalTabs());
    }

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
        xmlns:g="urn:import:com.google.gwt.user.client.ui" xmlns:m="urn:import:gwt.material.design.client.ui">
    <g:HTMLPanel>
        <h2>Your files</h2>
        <m:MaterialRow>
            <m:MaterialRow ui:field="row">
            </m:MaterialRow>
        </m:MaterialRow>
    </g:HTMLPanel>
</ui:UiBinder>

Everythink编译正常。但是,当我尝试进入包含此小部件的视图时会出现问题。

这是堆栈跟踪:

SEVERE: Exception caught: Exception caught: Exception caught: Exception caught: Exception caught: Exception caught: (TypeError) : Cannot read property 'hash' of undefinedcom.google.gwt.user.client.ui.AttachDetachException: Exception caught: Exception caught: Exception caught: Exception caught: Exception caught: Exception caught: (TypeError) : Cannot read property 'hash' of undefined
    at Unknown.fillInStackTrace_0_g$(cms-0.js@3:8443)
    at Unknown.Throwable_3_g$(cms-0.js@8:8398)
    at Unknown.Exception_3_g$(cms-0.js@18:8541)
    at Unknown.RuntimeException_3_g$(cms-0.js@18:8582)
    at Unknown.UmbrellaException_3_g$(cms-0.js@25:36497)
    at Unknown.UmbrellaException_5_g$(cms-0.js@26:36558)
    at Unknown.AttachDetachException_1_g$(cms-0.js@26:55009)
    at Unknown.tryCommand_1_g$(cms-0.js@11:55065)
    at Unknown.doAttachChildren_1_g$(cms-0.js@3:54662)
    at Unknown.onAttach_2_g$(cms-0.js@8:54494)
    at Unknown.setParent_2_g$(cms-0.js@12:54590)
    at Unknown.adopt_0_g$(cms-0.js@14:54649)
    at Unknown.add_14_g$(cms-0.js@8:54707)
    at Unknown.add_13_g$(cms-0.js@8:54700)
    at Unknown.add_66_g$(cms-0.js@8:77215)
    at Unknown.add_11_g$(cms-0.js@8:54637)
    at Unknown.add_65_g$(cms-0.js@43:77211)
    at Unknown.setPanelContent_0_g$(cms-0.js@54:114885)
    at Unknown.setInSlot_7_g$(cms-0.js@25:107982)
    at Unknown.setInSlot_1_g$(cms-0.js@25:73077)
    at Unknown.setInSlot_0_g$(cms-0.js@8:73066)
    at Unknown.execute_27_g$(cms-0.js@30:76290)
    at Unknown.$executeScheduled_0_g$(cms-0.js@40:11660)
    at Unknown.runScheduledTasks_0_g$(cms-0.js@9:11382)
    at Unknown.flushPostEventPumpCommands_0_g$(cms-0.js@5:11474)
    at Unknown.execute_5_g$(cms-0.js@22:11613)
    at Unknown.execute_4_g$(cms-0.js@19:11350)
    at Unknown.apply_0_g$(cms-0.js@28:10845)
    at Unknown.entry0_0_g$(cms-0.js@16:10901)
    at Unknown.anonymous(cms-0.js@14:10881)
    at Unknown.callback_0_g$(cms-0.js@45:11401)
Caused by: com.google.gwt.user.client.ui.AttachDetachException: Exception caught: Exception caught: 

我认为这是一个愚蠢的问题,但我确实找不到解决方案。请帮忙。

也许有找到原因的方法,但是对我来说,当我需要找到运行时异常时,调试GWT应用程序非常困难。

masterdany88

可能是这样的情况,我没有小部件模型对象的任何公共获取器,设置器和构造函数。但是现在我不确定。它开始工作了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

_gwt $ exception:无法读取未定义的属性“ uuid”

来自分类Dev

GWT无法读取未定义的属性“ example”

来自分类Dev

Vaadin和自定义Gwt小部件-设置小部件的语言

来自分类Dev

GWT客户端-未捕获的TypeError:无法读取未定义的属性'clear_31_g $'

来自分类Dev

已定义多值的 GWT 属性

来自分类Dev

从gwt调用javascript抛出未定义不是函数

来自分类Dev

在页面上初始化jquery移动窗口小部件将显示“无法读取未定义的属性'jQuery ....'”

来自分类Dev

大气GWT错误

来自分类Dev

GWT开发模式错误

来自分类Dev

GWT处理请求错误

来自分类Dev

GWT上传错误FileNotFoundException

来自分类Dev

无法运行GWT项目

来自分类Dev

巢式自定义GWT数据网格

来自分类Dev

GWT:制作自定义ListBox的最佳方法是什么

来自分类Dev

通过GWT中的框架从JavaScript调用JSNI Java函数-$ wnd是未定义错误

来自分类Dev

GWT窗口小部件库-源不可翻译

来自分类Dev

窗口小部件的android自定义字体属性

来自分类Dev

GWT Custom右键单击小部件

来自分类Dev

GWT小部件可扩展吗?

来自分类Dev

GWT FlowPanel未添加小部件

来自分类Dev

Flutter自定义窗口小部件无法显示

来自分类Dev

GWT树小部件的getElement()方法无法按预期工作

来自分类Dev

错误:无法读取未定义的属性

来自分类Dev

无法读取未定义的属性“on”?-> 错误

来自分类Dev

第0行:解析错误:无法读取未定义的属性“地图””-TypeScript自定义钩子

来自分类Dev

GWT RPC属性为空

来自分类Dev

GWT null没有属性

来自分类Dev

获取CSS位置属性gwt

来自分类Dev

GWT RPC属性为空