【发布时间】:2011-08-03 09:24:00
【问题描述】:
当需要在 GWT 中实现 RPC 时,需要在 client 包中创建 Async 和 Sync 接口及其在 Server 包中的 impl 类。为了成功的 RPC,需要在 GWT 中创建 Sync 和 Async 接口。
【问题讨论】:
标签: gwt
当需要在 GWT 中实现 RPC 时,需要在 client 包中创建 Async 和 Sync 接口及其在 Server 包中的 impl 类。为了成功的 RPC,需要在 GWT 中创建 Sync 和 Async 接口。
【问题讨论】:
标签: gwt
简而言之:客户端需要异步,服务器端需要同步。
Javascript 中的所有 RPC (XmlHttpRequest) 调用都是异步的 - 当网络调用完成时,将调用您的代码并返回结果。
因此,在使用 GWT RPC 的客户端,您必须提供一个异步接口(及其实现),以便在结果可用时被调用。
您还必须提供在服务器端实现的相关同步接口。
关于如何编写 Async 和 Sync 接口有一个约定:http://code.google.com/webtoolkit/doc/latest/tutorial/RPC.html
【讨论】:
我假设你知道浏览器中的任何 JS 都是同步事件驱动的。 要响应 RPC,您需要回调。 因此,在编写 Java 代码时,您需要将回调对象传递给调用。 但是服务器端是一个简单的方法调用,其返回类型应该与回调的参数匹配。对吧?
所以在这里你得到了 2 个接口,它们一起在编译时为你提供了完全的类型安全性。并让它一切顺利。
【讨论】: