0

我有一个简单的 RPC 调用,它在调用本地服务器时工作正常

      ContactsServiceAsync rpcService = GWT.create(ContactsService.class);

      rpcService.getContactDetails(new AsyncCallback<ArrayList<ContactDetails>>() {
      public void onSuccess(ArrayList<ContactDetails> result) {
          Window.alert("Successfully called server");
      }

      public void onFailure(Throwable caught) {
        Window.alert("Error calling server");
      }
    });

我现在要做的是更改端点以在 GAE 上调用服务(我刚刚在 GAE 上部署了相同的 GWT 应用程序,因此服务名称应保持不变)

  ContactsServiceAsync rpcService = GWT.create(ContactsService.class);

  ServiceDefTarget target = (ServiceDefTarget) rpcService;
  target.setServiceEntryPoint("http://myquizapp2.appspot.com/");


  rpcService.getContactDetails(new AsyncCallback<ArrayList<ContactDetails>>() {
      public void onSuccess(ArrayList<ContactDetails> result) {
          Window.alert("Successfully called server");
      }

      public void onFailure(Throwable caught) {
        Window.alert("Error calling server");
      }
    });

请注意我为更改客户端将用于调用服务的端点所做的“尝试”。它不起作用,我的 onFailure 方法被调用。我是在尝试做一些没有任何意义的事情,还是完全可以做到?

4

1 回答 1

0

你应该看看如何实现跨域 GWT RPC。您可以从这里的一些示例开始http://java.dzone.com/articles/how-do-cross-domain-gwt-rpc

于 2013-01-16T04:01:09.567 回答