При использовании модуля play-scala я пишу черту Secure следующим образом:
trait Secure extends Controller {
self:Controller =>
@Before
def checkAccess = {
if (!session.contains("username")) {
flash.put("url", if (request.method == "GET") request.url else "/")
Action(Authentication.login)
}
var check = getActionAnnotation(classOf[Check])
if (check != null) {
check(check)
}
check = getControllerInheritedAnnotation(classOf[Check])
if (check != null) {
check(check)
}
}
private def check(check: Check) {
for (role <- check.value()) {
if (!check(role)) {
Forbidden
}
}
}
}
Но я получаю следующую ошибку компиляции:
Файл /app/controllers/Secure.scala не может быть скомпилирован. Возникла ошибка: не найдено: значение getActionAnnotation
Как я могу это исправить?