Противоположность: Как вручную выйти из системы с помощью spring безопасности?
В моем приложении у меня зарегистрирован новый пользовательский экран, который отправляется на контроллер, который создает нового пользователя в db (и делает несколько очевидных проверок). Затем я хочу, чтобы этот новый пользователь был автоматически зарегистрирован... Я добрый чего-то подобного:
SecurityContextHolder.getContext().setPrincipal(MyNewUser);
Edit Ну, я почти реализован на основе ответа на Как программно зарегистрировать пользователя с помощью spring Security 3.1
Authentication auth = new UsernamePasswordAuthenticationToken(MyNewUser, null);
SecurityContextHolder.getContext().setPrincipal(MyNewUser);
Однако при развертывании jsp не может получить доступ к моему MyNewUser.getWhateverMethods()
, тогда как при обычной процедуре входа в систему. код, который работает номорально, но генерирует ошибку при регистрации, как указано выше:
<sec:authentication property="principal.firstname" />