我想嵌套两个请求工厂调用彼此。我检索一个post对象,并在success-method中再次使用同一个对象(仅用于测试目的,对于其他请求(例如persistence),我获得相同的行为)。GWT请求工厂 - 另一个请求的成功方法内的火灾请求
问题是:只有第一个请求到达服务器。
我没有收到任何错误消息。如果我调试代码,一切正常,直到第二个请求被触发。那么什么都没发生即使我为第二个请求的接收者实现了“onFailure”方法,后端上的方法也不会被调用,前端也不会显示错误。
public class RequestFactoryFindTest extends GWTTestCase{
/**
* must refer to a valid module that sources this class.
*/
public String getModuleName() {
return "com.Test.MyTest";
}
public void test(){
final ClientFactory clientFactory = GWT.create(ClientFactoryImpl.class);
final MyRequestFactory requestFactory = clientFactory.getRequestFactory();
final PostRequest request = requestFactory.postRequest();
request.findPost(1l).fire(new Receiver<PostProxy>() {
@Override
public void onSuccess(PostProxy response) {
final ClientFactory clientFactory = GWT.create(ClientFactoryImpl.class);
final MyRequestFactory requestFactory = clientFactory.getRequestFactory();
final PostRequest request = requestFactory.postRequest();
System.out.println("outer success");
request.findPost(1l).fire(new Receiver<PostProxy>() {
@Override
public void onSuccess(PostProxy response) {
System.out.println("inner success");
}
});
}
});
}
}
有人可以解释这一点吗?
编辑:
我尝试了很多东西想触发事件总线上的事件,捕捉事件,做我的内在要求厂家电话那里。但没有任何工作。我认为这是GWTTestcase与RequestFactory结合的一些问题。 我也改变了我的代码,所以我只使用一个clientFactory。
我无法解释,但我可以告诉你,你应该只为您的整个应用程序的单一'MyRequestFactory'。您应该也可以为'ClientFactory'做到这一点。 –
试过了,但没有改变任何东西 – jan