使用 SuperDevMode 进行调试
Debugging with SuperDevMode
使用 SuperDevMode 很难调试 GWT 应用程序。我的应用程序编译并运行良好。我的应用程序正在使用 Errai,但是访问页面会引发此错误:
SEVERE [AbstractCreationalContext] error initializing bean:
我想知道是否有解决方案,有没有办法查明错误?我认为仅仅 "guess" 出了什么问题并使其正常工作是不够的,因为它总是有机会在未来遇到这个错误。
您是否在使用 Errai UI 模板(即 @Templated)?
如果是这种情况,请检查您是否正确地将复合对象中注释为 @Datafield 的所有字段映射到关联模板,如 here 所述。
Errai 错误处理混淆了此类错误的消息。为了能够看到您需要在浏览器中启用 "Pause on caught exception" 的确切错误(如@El Hoss 所建议)。堆栈跟踪将准确显示是哪个映射导致了错误。
正确映射
CustomWidget.java
@Templated
class CustomWidget extends Composite {
@DataField Label label = new Label();
}
CustomWidget.html
<div>
<div data-field="label"></div>
</div>
[注意] 不要尝试将外部 "div" 元素映射为数据字段,因为它用于初始化您的 CustomWidget。 IE。在 CustomWidget 中执行 this.getElement()
将为您提供外部 div 元素的包装器对象。
使用 SuperDevMode 很难调试 GWT 应用程序。我的应用程序编译并运行良好。我的应用程序正在使用 Errai,但是访问页面会引发此错误:
SEVERE [AbstractCreationalContext] error initializing bean:
我想知道是否有解决方案,有没有办法查明错误?我认为仅仅 "guess" 出了什么问题并使其正常工作是不够的,因为它总是有机会在未来遇到这个错误。
您是否在使用 Errai UI 模板(即 @Templated)?
如果是这种情况,请检查您是否正确地将复合对象中注释为 @Datafield 的所有字段映射到关联模板,如 here 所述。
Errai 错误处理混淆了此类错误的消息。为了能够看到您需要在浏览器中启用 "Pause on caught exception" 的确切错误(如@El Hoss 所建议)。堆栈跟踪将准确显示是哪个映射导致了错误。
正确映射
CustomWidget.java
@Templated
class CustomWidget extends Composite {
@DataField Label label = new Label();
}
CustomWidget.html
<div>
<div data-field="label"></div>
</div>
[注意] 不要尝试将外部 "div" 元素映射为数据字段,因为它用于初始化您的 CustomWidget。 IE。在 CustomWidget 中执行 this.getElement()
将为您提供外部 div 元素的包装器对象。