Web/스프링

스프링 시큐리티 utf-8 충돌나서 한번더 인코딩함. (스프링 시큐리티 적용시 인코딩 필터 동작안할경우)

벨포트조던 2017. 5. 25.
반응형

스프링 시큐리티 적용 뒤 인코딩필터가 제대로 동작하지 않을경우 


web.xml 을 확인해봐야 합니다.

저는 바보같이 encoding필터를 태우기도 전에 security 필터를 태워서..

인코딩이 변경되지 않았었네요..

여러분들은 저같은 실수를 하지 마시길 빌어요 ㅜ.ㅜ

아래는 잘못설정된 예입니다.

<!-- 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>

<!-- 인코딩 필터 등록 -->

    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>
            org.springframework.web.filter.CharacterEncodingFilterImpl
        </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>


위처럼 설정하지 마시고 아래처럼 설정하셔야 합니다.

다른분들은 이런문제로 저처럼 하루를 낭비하지 않으셨으면 합니다 ㅜ.ㅜ

<!-- 인코딩 필터 등록 -->

    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>
            org.springframework.web.filter.CharacterEncodingFilterImpl
        </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>



출처: http://ryys1993.tistory.com/entry/스프링-시큐리티-적용시-인코딩-필터-동작안할경우 [성철이의 tistory]

출처: http://ryys1993.tistory.com/entry/스프링-시큐리티-적용시-인코딩-필터-동작안할경우 [성철이의 tistory]

출처: http://ryys1993.tistory.com/entry/스프링-시큐리티-적용시-인코딩-필터-동작안할경우 [성철이의 tistory]

출처: http://ryys1993.tistory.com/entry/스프링-시큐리티-적용시-인코딩-필터-동작안할경우 [성철이의 tistory]

반응형

댓글