GWT super dev模式,SimpleCheckBox.wrap()AssertionError

时间:2014-05-30 19:23:06

标签: gwt checkbox assert gwt-super-dev-mode gwt-dev-mode

使用GWT我遇到了SimpleCheckBox.wrap()方法的问题,因为它在DevMode中产生了AssertionError。我曾经通过添加仅在GWT.isScript()为真的情况下执行的代码来解决这个问题。我现在使用SuperDevMode面临同样的挑战,问题是:是否有一种在运行时从源代码中识别superdevmode的方法?

提前致谢!

P.S。现在没有快速的方法从代码中删除.wrap()调用,所以问题实际上仅限于运行模式识别。

UPD。 1:

我创建了一个没有.wrap()方法的新“特殊”类,并将这些行添加到我的模块的gwt.xml文件中:

<set-property name="superdevmode" value="on"/>
<replace-with class="com.project.client.MyWidgetSuperdevmode">
    <when-type-is class="com.jostleme.jostle.ui.rich.client.MyWidgetProdMode" />
    <when-property-is name="superdevmode" value="on"/>
</replace-with>

尝试了多种方法:通过书签编译,重新编译项目旧方法,重新启动常规和代码服务器应用程序;并且在sourcemaps中只能看到类MyWidgetProdMode。我究竟做错了什么?是否会在编译时加载新类?

1 个答案:

答案 0 :(得分:0)

您可以在延期绑定规则中使用sa superdevmode属性,但是除此之外没有办法与isScript()类似,无法检测您是否处于超级模式或不。该属性可以包含值onoff