티스토리 뷰

로그인구현을 스프링 시큐리티로 다시 구현해 보고 싶어서 설정 잡던 중에 나온 오류

org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'springSecurityFilterChain' available

이 오류는 빈이 설정되지 않아서 설정 파일을 찾을 수 없어서 나타나는 에러메세지이다.


분명 필요한 설정 다 했고, 빈 설정도 했는데 왜 빈을 못찾을까 하면서 구글링 하면서 해결법들을 확인했다.

그런데 그 해결법들은 나에게 해당사항 없었다. 설정은 다 잡았으니까! 

 

그러다가 우연하게 눈에 띈 저 태그들

원인 발견!

스프링 설정파일 위치설정하는 코드가 중복 

 

중복코드 지우고 다시 서버 재시작 했더니 정상적으로 화면이 떴다!

 

 

다시 정리해 보는 오류!

No bean named 'springSecurityFilterChain' available
  • 원인 : 빈이 설정되지 않아서 설정 파일을 찾을 수 없는 경우
  • 해결법

1. web.xml에서   security-context.xml을 찾을 수 있도록 빈설정해주기

<!--스프링 설정파일 위치 설정 -->
	<context-param>
	      <param-name>contextConfigLocation</param-name>
	      <param-value>
	         /WEB-INF/spring/root-context.xml
	         /WEB-INF/spring/spring-security.xml // 이거 추가
	      </param-value>
   </context-param>

2. 빈을 먼저 생성해주고 빈을 찾을 수 있게 설정해주기

 

구글링 하는도중에 찾은 해결법인데 빈을 생성해줄 때 xml파일에서 필터와 빈생성 태그의 위치에도 영향이 있는거 같았다.

 

web.xml에서 SpringSecurityFilterChain이 bean으로 생성되기 전에 spring-security.xml 설정을 먼저 불러오면 bean이 생성되기 전에 찾는데 이러면  bean을 찾을 수 없다고 한다.

 

이말을 보고 놓고 있던 스프링공부 다시해야겠다는 생각이 아주 무럭무럭 났다. 

빈 생성 과정은 공부하고 따로 포스팅 해야지.

 

그래서 필터체인 설정을 먼저 써주고나서 스프링 설정파일 위치설정을 그 뒤에 적어두어야 먼저 web.xml에서 필터체인 빈이 설정되고 spring-security.xml의 설정을 불러오게되면 빈을 찾는다. 

[해당 블로그 포스팅글]

 

[Spring] NoSuchBeanDefinitionException: No bean named 'springSecurityFilterChain' is defined 오류 해결

[Spring] NoSuchBeanDefinitionException: No bean named 'springSecurityFilterChain' is defined 오류 해결 전자정부 프레임워크 Spring (Maven) Project를 구동하였더니 발생한 에러였다. 심각: Exception starting filter springSecurityFil

haenny.tistory.com

<!--스프링 필터체인 설정 -->
<filter>
     <filter-name>springSecurityFilterChain</filter-name>
     <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
 </filter>
 <filter-mapping>
     <filter-name>springSecurityFilterChain</filter-name>
     <url-pattern>/*</url-pattern>
 </filter-mapping>
	
<!--스프링 설정파일 위치 설정 -->
<context-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>
         /WEB-INF/spring/root-context.xml
         /WEB-INF/spring/spring-security.xml
      </param-value>
</context-param>
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함