Простым решением является расширение базового контроллера для всех ваших контроллеров и включение @Before в базовый контроллер.
Другим вариантом (и лучшим решением, поскольку он более гибкий) является использование аннотации @With. Пример игровой документации:
Пример:
public class Secure extends Controller {
@Before
static void checkAuthenticated() {
if(!session.containsKey("user")) {
unAuthorized();
}
}
}
и на другом контроллере:
@With(Secure.class)
public class Admin extends Application {
...
}
Это означает, что контроллер администратора будет обрабатывать все перехватчики (@Before, @After, @Finally), содержащиеся в контроллере Secure.