весенняя безопасность: почему мы не можем получить доступ к параметрам полномочий Hibernate в @PreAuthorize?
У меня есть следующий метод интерфейса, к которому я применяю@PreAuthoriz
е:
@PreAuthorize("doSomething(#user.id)")
void something(User user, List<User> accessList);
гдеUser
этоHibernate entity объект. Это дает мне ошибку:
org.springframework.expression.spel.SpelEvaluationException: EL1007E:(pos 13): Field or property 'id' cannot be found on null at org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:204)
Там нет никакого способа, чтоuser
Параметр имеет значение null, как будто я удаляю аннотацию и проверяю значение пользователя в методе, реализующем этот метод интерфейса, существует действительныйUser
объект присутствует там. Кроме того, непосредственно перед вызовом этого метода я убедился, что пользовательский объект правильно создан.
Я действительно не могу понять, почемуuser
поле будет считаться нулевым анализатором SPEL