Jak uzyskać dostęp do HttpServletRequest w niestandardowym uwierzytelnianiu uwierzytelniania. Próbowałem robić toUzyskaj dostęp do HttpServletRequest w niestandardowym uwierzytelnianiu Provider
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
HttpServletRequest request = ((ServletRequestAttributes) requestAttributes).getRequest();
String username = (String) httpReq.getAttribute("j_username");
LUB
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
HttpServletRequest httpReq = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest();
String username = (String) httpReq.getAttribute("j_username");
jestem coraz nazwę użytkownika NULL
ale RequestContextHolder.getRequestAttributes(); zwraca null.
Chcę odwołać się do requestcontext, przekazać go lub zlecić Spring Magic, abym mógł się do niego odwoływać.
Jestem również daje RequestContextListener w moim web.xml
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
Przeszukałem forum zabezpieczeń, ale nadal nie miałaś jeszcze znalazłem nic.
Z góry dziękuję.
Czy te poświadczenia nie powinny być zawarte w obiekcie Uwierzytelnianie? http://static.springsource.org/spring-security/site/docs/3.0.x/apidocs/org/springframework/security/authentication/AuthenticationProvider.html – dardo
Dardo ma rację. Myślę, że prawdopodobnie powinieneś spojrzeć na kilka podstawowych próbek i przeczytać część dokumentacji, a następnie wyjaśnić bardziej szczegółowo, co próbujesz osiągnąć, ponieważ nie mogę wymyślić uzasadnionego powodu, aby próbować uzyskać dostęp do nazwy użytkownika w ten sposób. –
Poświadczenia rzeczywiście będą w obiekcie Uwierzytelnianie. Jednak też szukam rozwiązania. Ja również potrzebuję uzyskać dostęp do wniosku, ale z innego powodu. W mojej aplikacji URL odgrywa rolę w uwierzytelnianiu. Jakieś pomysły, jak zdobyć je w tej klasie? – Wouter