Следуя официальному руководству , Spring вылетает с Property or field 'principal' cannot be found on null
при добавлении этого @Query в репозиторий:
@Query("select count(e) from #{#entityName} e where e.user_id = #{principal?.id}")
Для меня это похоже на проблему циклической зависимости: в моем случае UserDetailsServiceImpl нужен JpaRepository. Создавая этот репозиторий, Spring пытается оценить @Query, который сам опирается на конфигурацию безопасности (SecurityEvaluationContextExtension
bean). Конфигурация безопасности зависит от UserDetailsService. А также. Так. На.
Я пробовал разные способы избежать этого (@DependsOn, удаление @EnableJpaRepository, перемещение конфигов), но безуспешно. Поскольку я довольно новичок в Spring, я думаю, что делаю что-то действительно глупое, поэтому я прошу вас:
Возможно ли вообще это созвездие - интеграция данных Spring Security с UserDetailsService в зависимости от JpaRepo, и что я могу делать не так?