GWT RequestFactory: наследование интерфейсов в RequestContext

У меня есть интерфейс OrganizationRequestContext, который прекрасно работает:

@Service(OrganizationDAO.class)
public interface OrganizationRequestContext extends RequestContext
{
    Request<OrganizationProxy> findOrganization(Long id);

    InstanceRequest<OrganizationProxy, Void> persist();
    InstanceRequest<OrganizationProxy, Void> remove();
}

Теперь я хочу взять эти две последние функции и поместить их в PersistentRequestContext моего собственного дизайна, чтобы я мог одинаково обрабатывать все мои RequestContexts в своем клиентском коде:

public interface PersistableRequestContext<T extends BaseProxy>
{
    InstanceRequest<T, Void> persist();
    InstanceRequest<T, Void> remove();
}

...

@Service(OrganizationDAO.class)
public interface OrganizationRequestContext extends RequestContext, PersistentRequestContext<OrganizationProxy>
{
    Request<OrganizationProxy> findOrganization(Long id);
}

Но это не проходит проверку: сервер жалуется, что

[ERROR] com.activegrade.shared.data.PersistableRequestContext is not a RequestContext

Если я заставлю PersistableRequestContext расширить RequestContext, то сервер будет жаловаться, что он не связан с какой-либо конкретной службой DAO.

Есть ли способ расширить общий интерфейс помимо RequestContext в моих различных интерфейсах RequestContext?


person Riley Lark    schedule 16.02.2011    source источник
comment
К сожалению, похоже, что вы достигли предела в генераторе кода RequestContext. Лучше всего создать задачу: code.google.com/ p/google-web-toolkit/issues/list   -  person Jason Terk    schedule 17.02.2011
comment
Создана проблема: code.google.com/p/google. -web-toolkit/issues/detail?id=6035   -  person Riley Lark    schedule 17.02.2011
comment
Почему вы не поместили аннотацию @Service в PersistableRequestContext?   -  person Nick Hristov    schedule 13.03.2011


Ответы (1)


Эта проблема была исправлена ​​в GWT 2.4. Спасибо, Гугл!

http://code.google.com/p/google-web-toolkit/issues/detail?id=6035

person Riley Lark    schedule 29.11.2011