Как использовать пакет с безопасностью на основе ролей
Извините за мой английский.... Может, кто-нибудь поможет мне найти информацию об использовании пакетной работы с защитой на основе ролей на сервере Glassfish? Когда я вызываю метод из EJB:
@Override
@RolesAllowed({"root_role", "admin_role", "user_role"})
public void execute() {
BatchRuntime.getJobOperator().start(STATISTIC_JOB_NAME, new Properties());
}
Я получаю исключение как это: javax.ejb.AccessLocalException: клиент не авторизован для этого вызова
Мой класс работы:
@Dependent
@Named(value = "StatisticJob")
public class StatisticJob extends AbstractBatchlet {
@EJB
private StatisticFacadeLocal sfl;
@Override
public String process() throws Exception {
System.out.println("StatisticJob.process()");
List<StatisticPortEntity> spes = sfl.findAll();
if (spes != null && !spes.isEmpty()) {
for (StatisticPortEntity spe : spes) {
System.out.println(spe);
}
} else {
return "Statistic list is empty.";
}
return "StatisticJob.proccess is done.";
}
}
Как использовать безопасность на основе ролей в пакетном режиме? Спасибо!