spring security: Por que não podemos acessar os parâmetros do Hibernate no @PreAuthorize?
Eu tenho o seguinte método de interface no qual estou aplicando@PreAuthoriz
e:
@PreAuthorize("doSomething(#user.id)")
void something(User user, List<User> accessList);
OndeUser
é umEntidade hibernate objeto. Isso me dá um erro:
org.springframework.expression.spel.SpelEvaluationException: EL1007E: (pos 13): campo ou propriedade 'id' não pode ser encontrado em null em org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty (PropertyOrFieldReference.java:204)
Não há como ouser
O parâmetro é nulo, como se eu removesse a anotação, e inspecionasse o valor do usuário no método que implementa este método de interface, há um válidoUser
objeto presente lá. Além disso, pouco antes de chamar esse método, certifiquei-me de que o objeto do usuário fosse construído corretamente.
Eu realmente não consigo descobrir por que ouser
campo ser considerado nulo pelo analisador SPEL