假设我们有以下服务接口:
@Path("servicea")
public interface ServiceA {
@GET void aMethod();
}
@Path("serviceb")
public interface ServiceB {
@GET void anotherMethod();
}
现在,使用 RestEasy,这些可以使用任何支持的配置轻松公开为 Rest 服务。在这种情况下,我们有一个实现 forServiceA
和一个 for ServiceB
,我们通过 导出org.jboss.resteasy.spi.Registry
,如下所示:
Registry registry = (Registry) servletContext.getAttribute("org.jboss.resteasy.spi.Registry");
registry.addSingletonResource(serviceAimpl);
registry.addSingletonResource(serviceBimpl);
这工作正常。但是现在,假设将两个实现组合在一起,在一个类下是有意义的:
public class ServiceImpl implements ServiceA, ServiceB {
...
}
Registry registry = (Registry) servletContext.getAttribute("org.jboss.resteasy.spi.Registry");
registry.addSingletonResource(serviceImpl);
我希望当我将此类的对象注册到 RestEasy 以公开两条路径时,但似乎它只公开了两条路径中的一条。有没有办法做到这一点?或者这是 RestEasy 中的一个错误?