Привязанный к потоку запрос не найден, только когда выдается исключение времени выполнения

Это известная ошибка .

Очень грустно, что есть такие старые незафиксированные ошибки. Вы можете попробовать обходное решение, опубликованное в этом потоке или просто оставить код как есть.

0
задан Rodrigo Sene 19 January 2019 в 15:07
поделиться

1 ответ

На основе комментариев @dur я изменил свой код, чтобы использовать SecurityContextHolder и получить текущую авторизацию контекста потока.

Мой компонент теперь:

    @Component
    public class AuthRequestInfo {

        private AuthorizationService authorizationService;

        public AuthRequestInfo(AuthorizationService authorizationService) {
            this.authorizationService = authorizationService;
        }

        public Authorization getAuthorization(){
            Claims claims = (Claims)SecurityContextHolder.getContext().getAuthentication().getPrincipal();
            String key = claims.get(KEY_CLAIM).toString();
            return this.authorizationService.findByExampleOptional(Authorization.builder().key(key).build())
                    .orElseThrow(new UnauthorizedException(INVALID_TWOFACE_AUTHORIZATION_HEADER));
        }

    }

Проверка подлинности SecurityContextHolder была установлена ​​на GenericFilterBean. Теперь у меня нет проблем.

0
ответ дан Rodrigo Sene 19 January 2019 в 15:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: