Gwt RequestFactory: редактирование прокси сразу после его получения

Я хочу немедленно запросить RequestContext.edit(anObject) после того, как я получу его в Receiver.onSuccess, чтобы я мог поместить его в свою базу данных на стороне клиента как уже редактируемую. К сожалению, когда я это делаю, RequestFactory жалуется, что запрос уже выполняется. Как мне этого добиться?

requestContext.findOrganization(id).fire(new Receiver<OrganizationProxy>()
{
    public void onSuccess(OrganizationProxy response)
    {
        database.put(requestContext.edit(response)); //fails because a request is already in progress
    }
});

1 ответ

Решение

Я решил эту проблему, используя одноразовый контекст запроса для создания запроса, а затем с помощью моего более постоянного контекста запроса изменил объект:

temporaryRequestContext.findOrganization(id).fire(new Receiver<OrganizationProxy>()
{
    public void onSuccess(OrganizationProxy response)
    {
        database.put(permanentRequestContext.edit(response)); //succeeds because it has not been fired, even though edit() has been called many times
    }
});
Другие вопросы по тегам