次のサービス インターフェイスがあるとします。
@Path("servicea")
public interface ServiceA {
@GET void aMethod();
}
@Path("serviceb")
public interface ServiceB {
@GET void anotherMethod();
}
現在、RestEasy を使用すると、サポートされている任意の構成を使用して、これらを Rest サービスとして簡単に公開できます。この場合、 と の実装がServiceA
あり、次のようにServiceB
経由でエクスポートします。org.jboss.resteasy.spi.Registry
Registry registry = (Registry) servletContext.getAttribute("org.jboss.resteasy.spi.Registry");
registry.addSingletonResource(serviceAimpl);
registry.addSingletonResource(serviceBimpl);
これはうまくいきます。しかしここで、2 つの実装を 1 つのクラスの下にグループ化することが理にかなっているとしましょう。
public class ServiceImpl implements ServiceA, ServiceB {
...
}
Registry registry = (Registry) servletContext.getAttribute("org.jboss.resteasy.spi.Registry");
registry.addSingletonResource(serviceImpl);
このクラスのオブジェクトをRestEasyに登録すると、両方のパスが公開されると思いますが、2つのうちの1つだけを公開しているようです。これを達成する方法はありますか?それとも、これは RestEasy のバグですか?