我有一个REST API,我尝试使用其他特权进行使用。 当我在所有类中使用@RolesAllowed批注时,这最后一个无效。
但是当我将@RolesAllowed()放入特定方法中时,就可以了!
如果我将注释放在类上方,则不起作用:
@RolesAllowed("student.roles")
@Tag(name = "student", description = "student API")
public class StudentResource {
@Inject
private StudentBridge studentBridge;
@GET
@Path("ext/students")
public List<StudentView> findAll() {
return studentBridge.findAll();
}
@GET
@Path("student")
public StudentView findOne(long id) {
return studentBridge.findOne(id);
}
}
但是当我将注释放在每种方法之上时,它就可以正常工作:
@Tag(name = "student", description = "student API")
public class StudentResource {
@Inject
private StudentBridge studentBridge;
@GET
@Path("ext/students")
@RolesAllowed("student.roles")
public List<StudentView> findAll() {
return studentBridge.findAll();
}
@GET
@Path("student")
@RolesAllowed("student.roles")
public StudentView findOne(long id) {
return studentBridge.findOne(id);
}
}
对这种行为有任何想法吗?