Сейчас у нас для REST-сервисов используется Restlet. Мне в нём нравится абстракция Router, позволяющая объединить несколько ресурсов с общим URL-префиксом и повесить на них какую-то общую логику (например, аутентификацию). Кроме того, их можно динамически подключать и отключать.
При работе в контейнере сервлетов в Restlet получается весьма логичная цепочка: Servlet -> ServletAdapter -> [Router*] -> ServerResource.
Сервер предоставляет несколько API, которые администратор может включать-отключать через веб-интерфейс. Все с разными параметрами аутентификации HTTP Basic.
Как подобное сделать в JAX-RS? Насколько я понимаю, там есть только две абстракции: Application и Resource. Выносить каждое API в отдельный Application не хочется, потому что и Jersey, и RESTeasy, похоже, требуют выносить каждый Application в отдельный сервлет. Геморройно-с.