Как выполнить приведение типов в языке выражений Spring

Я пытаюсь использовать аннотацию @PreAuthorize для управления доступом. Мне нужно проверить некоторые настраиваемые поля в деталях объекта аутентификации. У меня есть класс CustomWebAuthenticationDetails, который является подклассом WebAuthenticationDetails и содержит настраиваемые поля. Обычно я бы использовал следующее, чтобы добраться до моих настраиваемых полей в CustomWebAuthenticationDetails:

((CustomWebAuthenticationDetails)authentication.getDetails()).getCustomField()

Однако, когда я пытаюсь использовать приведенный выше оператор (даже включая полный путь к CustomWebAuthenticationDetails) в выражении @PreAuthorize, я получаю следующую ошибку. :

java.lang.IllegalArgumentException: Failed to parse expression ...

Что мне делать с приведением типов здесь?

Спасибо,

Дэниел

6
задан Mansfield 9 June 2012 в 13:10
поделиться