※ 해당 내용은 Boot 환경이 아니며, Security 설정을 xml로 이미 완성 했을 경우다.
반나절 찾다가 겨우 찾았다. 보통 Security Config를 xml로 하지 않고 Java 단에서 설정하나보다. 그래서 찾기가 힘들었다.
환경
Java 1.7
Spring Framework 4.3.4
Spring Security 4.2.2
Tomcat 8.5
UserDetailsService를 상속 받은 경우 LoginService를 구현했을 것이다. Login Service에서 Request만 받아 올 수 있으면 된다.
<!-- LoginService에서 request 받아오려면 이렇게 해야함 -->
<listener>
<listener-class>
org.springframework.web.context.request.RequestContextListener
</listener-class>
</listener>
LoginService implement UserDetailsService
@Autowired
private HttpServletRequest request;
@Bean
public RequestContextListener requestContextListener(){
return new RequestContextListener();
}
public UserDetails loadUserByUsername(String id) throws UsernameNotFoundException
request.getParameter("login.jsp에서 엘리먼트의 name 넣기")