2014-04-19 135 views
0

我想调试从我的GWT应用程序通过我的AsyncService调用的服务器端方法。该方法在界面中。我把它称为我的入口点像这样:GWT - 调试异步方法调用

service.loadData(file, new AsyncCallback<Void>() { 

    @Override 
    public void onFailure(Throwable caught) { 
     System.out.println("loadData - failure"); 
    } 

    @Override 
    public void onSuccess(Void result) { 
     System.out.println("loadData - success"); 
    } 
}); 

我的问题是,调试器只是跳过该方法。它不会进入我的界面的实现类。 是否可以在服务器包中的这个函数内进行调试?

+1

在服务器端方法中放置一个断点。它应该工作。 – iMBMT

+1

是的,你也可以调试服务器端代码。在'ServiceImpl#loadData()'方法的开始处放置一个断点。 – Braj

+0

@Braj我已经试过了。但调试器不会停留在我的中断点。只有当我在EntryPoint类中创建一个断点时它才会停止。 – Armin

回答

0

我终于找到了。它认为tomcat不支持服务器端调试。我用Google AppEngine试了一下,效果很好。

0

根据您的意见,您的服务器端的类不考虑更改。

请删除所有生成的存根并重新编译项目后再次尝试。我已经突出显示了所有需要删除的存根,如下面的快照所示。

enter image description here


- 编辑 -

尝试使用Firefox的Firebug插件来检查RPC调用,如下图所示:

enter image description here

+0

我删除了你说的每一件事,做了一次GWT编译并以调试模式启动了应用程序。 Stil没有输出,应用程序不会中断。 – Armin

+0

请发布完整的代码。服务,异步服务,服务impl和入口点类。 – Braj

+0

我应该先删除不重要的路径吗?这是超过1000行代码... – Armin