使用请求工厂发送到服务器的内容

时间:2012-04-17 08:39:24

标签: gwt requestfactory

我有问题要了解Request工厂发送给服务器的内容。我有一个方法

Request<NodeProxy> persist(NodeProxy node)

NodeProxy是一个来自树状结构的Object(具有子节点和一个父节点,所有类型都是NodeProxy)。我只更改节点中的一个属性并调用persists。

现在的问题是发送到服务器的是什么? 在这里的码头https://developers.google.com/web-toolkit/doc/latest/DevGuideRequestFactory 有:
“在客户端,RequestFactory跟踪已修改的对象并仅向服务器发送更改,从而产生非常轻量级的网络负载。”

在同一个停靠栏中,在“实体关系”一章中,还有以下内容:
“RequestFactory在一个请求中自动发送整个对象图。”

我想知道我该怎么理解这一点。

我的问题: 我的树结构可以变得很大,可以说是50个节点。问题是,为了更新一个属性,方法

public IEntity find(Class<? extends IEntity> clazz, String id)

在班级

public class BaseEntityLocator extends Locator<IEntity, String>

为图中的每个对象调用,这是不可接受的。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

你遇到的问题是RequestFactory在获取属性时会自动edit()代理,并且在构造请求有效负载时会出现一个错误,即使用这种方式隐式编辑整个代理图,即使你没有亲自打电话给吸气者 该错误会产生很多影响,包括RequestContext isChanged() {{1}}中的误报:http://code.google.com/p/google-web-toolkit/issues/detail?id=5952

我非常希望这将在GWT 2.5中修复(将在未来几周内发布)。