【发布时间】:2013-11-21 09:39:34
【问题描述】:
我正在 GWT 中在汽车租赁公司的 Eclipse 中编写一个 java 项目。 我需要在 2 个代理(服务器)之间交换信息,例如可供出租的汽车列表,并且有人建议我使用 gwt-syncproxy 。 来自网站的描述:
GWT SyncProxy 在 Java 客户端和 RemoteService servlet 之间提供同步 RPC。通过使用 SyncProxy,我们可以从纯 Java(无 JSNI)代码中调用 GWT RemoteService 方法。
我遵循了官方指南(也是网上唯一的) https://code.google.com/p/gwt-syncproxy/ 但它不起作用:浏览器中的一条消息说:
插件无法连接到位于 127.0.0.1:9997 的开发模式服务器按照底层故障排除说明进行操作
(我在java客户端代码中指定的地址)project.java
//create new proxy instance for the service interface:
private static GreetingService rpcService =
SyncProxy.newProxyInstance(GreetingService.class,
"http://127.0.0.1:9997", "greet");
//invoke the RPC method:
String result = rpcService.greetServer("SyncProxy");
这是 GreetingService.java:
@RemoteServiceRelativePath("greet")
public interface GreetingService extends RemoteService {
String greetServer(String name);
}
以及服务实现GreetingServiceImpl.java:
public class GreetingServiceImpl extends RemoteServiceServlet
implements GreetingService {
public String greetServer(String name) {
return "Hello, " + name;
}
}
我做错了什么?有没有更好的方法可以在不同服务器之间的局域网中进行 RPC? (我在日志文件和 Eclipse 控制台中没有错误)
【问题讨论】:
-
9997 端口通常用于开发模式的代码服务器 - 为什么在这里使用它而不是 8888 http 端口?
-
@ColinAlworth 不知道..现在我已将其修改为:"127.0.0.1:8888", "greet");但没有任何改变,仍然:插件无法连接到 127.0.0.1:9997 的开发模式服务器按照底层故障排除说明进行操作
-
抱歉,我根本不知道这个库,只是想尽可能让您了解最初的细节。
标签: gwt rpc gwt-rpc gwt-syncproxy