我有我的 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 接口中,还有什么方法可以扩展通用接口?