이번 글은 아주 기초적이면서 스프링 프레임워크를 시작하고 로그인 페이지 구성을 하면서 겪은 아주 초보적인 실수다ㅠㅠㅜ.
처음 스프링 프레임워크를 시작하면서 web.xml에 encodingFilter을 적용하면서 시작했다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
|
cs |
*기본 web.xml에 encodingFilter를 적용한 모습*
이후에 로그인 페이지 구성을 위해 Spring Securtity filter을 적용했다.
1
2
3
4
5
6
7
8
9
|
<!-- Spring Security 필터 -->
<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>
|
cs |
하지만 여기서 문제가 생겼다. Spring security filter를 적용하면 페이지가 로딩이 되지 않았다.
몇 시간을 구글링 한 결과로 답을 알아냈는데 아래와 같이 Spring security filter 이전에 encodingFilter를 씌워야 한다는 것.
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
|
<!-- 인코딩 필터 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Spring Security 필터 -->
<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>
|
cs |
결론 : 여러분들은 저같이 기본적인걸로 시간 낭비 안 하셨으면 좋겠습니다ㅠㅠ
반응형