当我更改端点时,GWT RPC 调用不起作用
Posted
技术标签:
【中文标题】当我更改端点时,GWT RPC 调用不起作用【英文标题】:GWT RPC call not working when I change the endpoint 【发布时间】:2013-01-15 21:01:06 【问题描述】:我有一个简单的 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 方法被调用。我是在尝试做一些没有任何意义的事情,还是完全可以做到?
【问题讨论】:
您遇到了跨域 rpc 问题。 【参考方案1】:你应该看看如何实现跨域GWT RPC。你可以从这里的一些例子开始http://java.dzone.com/articles/how-do-cross-domain-gwt-rpc
【讨论】:
以上是关于当我更改端点时,GWT RPC 调用不起作用的主要内容,如果未能解决你的问题,请参考以下文章
在 Tomcat 中作为 ROOT 部署时 RPC/Servlet 不起作用