У меня много EJB с моими бизнес-методами.Эти методы используют аннотацию @RolesAllowed, чтобы проверить, может ли пользователь выполнить этот метод.
Итак, у меня есть планировщик EJB, который вызывает эти методы EJB.Планировщики EJB работают с анонимным пользователем, поэтому авторизация не проходит.
Как я могу запустить свои планировщики с другой ролью?Для тестирования предлагается запустить аннотацию @RunAs ("SYSTEM"), но я не знаю, правильно ли это.
Мой класс планировщика
@RunAs("SYSTEM")
public class InboxScheduler {
protected void inboxFileScan(Timer t) {
receiptFilesService.receiptFiles();
}
}
Мой класс EJB
@RolesAllowed("SYSTEM")
public void receiptFiles() {
// do anything
}