Мне нужно получить доступ к свойствам HttpServletRequest
, чтобы получить javax.servlet.request.X509Certificate, который содержит массив X509Certificate
сертификатов для запросов TLS.
Из JAX-RS ContainerRequestFilter
я могу легко извлечь это из метода ContainerRequestContext.getProperty(String property)
, но я не могу найти способ получить его из WebSocket Session
или HandshakeRequest
, из которого я могу получить доступ к экземпляру HttpSession
, но не к экземпляру HttpServletRequest
.
Примечание. Это не дубликат Доступ к HttpSession из HttpServletRequest в веб-сокете @ServerEndpoint, поскольку мне нужен доступ к HttpServletRequest
(или эквивалентному для извлечения сертификатов TLS), а не HttpSession
.
Поскольку WebSocket является расширенным набором HTTP, я думаю, что это должно быть возможно, и надеюсь, что команда Java придумала способ доступа к свойствам сервлета, но я действительно не мог его найти. Кто-нибудь знает, возможно ли это вообще?