使用GWT编辑器和RequestFactory编辑集合

时间:2011-08-17 15:38:51

标签: gwt requestfactory objectify gwt-editors

有关上下文,请参阅orignal question

附加背景:

  • Objectify-Appengine用于持久性。
  • FormProxyQuestionProxy的类型为EntityProxy
  • QuestionDataProxy及其子类型的类型为ValueProxy
  • 所有编辑都实施HasRequestContext,如果是QuestionData子类型编辑,则会从父级明确调用HasRequestContext.setContext()

第一个问题与集合和the second has to do with Polymorphic types有关。我不确定问题是否与我使用Editors或RequestFactory的方式有关。由于RPC有效负载中不存在数据,因此我们可以排除持久性设置。

问题

QuestionProxy的值在RPC请求中都为空(如果是新创建了QuestionProxy,否则为ok)

问题

从表单添加/删除Questions的正确方法是什么?使用编辑器时,为QuestionFormQuestionData调用创建,编辑,更新方法的顺序是什么。


当前解决方案

添加问题功能(在活动中):

@Override
public void addQuestion(final QuestionEditor questionEditor) {
    final QuestionProxy proxy = theOneAndOnlyOneContextForEditing.create(QuestionProxy.class);
    final QuestionRequest dpr = theOneAndOnlyOneContextForEditing.append(clientFactory.getRequestFactory()
            .qestionRequest());
    dpr.updateQuestion(proxy);
    questionListEditor.asEditor().getList().add(proxy);
}

要删除问题,我会在问题中标记一个标记,该标记会将其从服务器列表中删除,然后将其删除。 (hack)这仅适用于已保存的问题。

0 个答案:

没有答案