我有一个非常简单的GWT应用程序,包含一个简单的数据库操作的rpc回调。 它只是从数据库中检索一个字符串。这在当地工作正常。它通过回调检索字符串并将其显示在屏幕上。
但是当我将它部署到appengine时,它不起作用并且给我错误'gwt typerror(不能调用方法'X'为null)'。我已经尝试过调试,记录等,但它没有给我任何东西,我很想丢失。
EntityService.Util.getInstance().getEntityName(
Function.getHash("john"), Function.getHash("name"),
Function.getHash("english"), new AsyncCallback<String>() {
@Override
public void onSuccess(String result) {
l.setText(result);
}
@Override
public void onFailure(Throwable caught) {
l.setText(caught.getMessage());
}
});
你们有什么线索可能会发生什么,或者为什么我在appengine上遇到这个错误? 我试图只通过回调来连接部署的appengine上的数据库,这样可以正常工作。
提前致谢!
答案 0 :(得分:1)
如果在推入appengine之前尝试使用以下任一解决方案,那么调试此类错误会更容易 -
解决方案1 - 只要您没有进入产品模式,就可以在pretty
模式下编译应用程序。
漂亮模式可让您在网络模式下轻松调试。例外是可读的。
解决方案2 - 整合Webmode Exception handling
- http://code.google.com/p/google-web-toolkit/wiki/WebModeExceptions
该解决方案都会增加一些运行时性能损失,应该在开发周期中使用。一旦你完成了经过测试的应用程序,就可以关闭webmode异常并完成编译。