2. acegi 컨텍스트 파일 작성하고, 스프링 컨텍스트 리스너 등록하기.

일반적인 스프링 컨텍스트 파일을 작성합니다. Acegi 관련 bean 설정을 따로 모아두는 것이 관리에 용이할 것입니다. 따라서 새로운 파일을 작성합니다.

사용자 삽입 이미지
그리고 web.xml에서 참조할 FilterChainProxy bean을 위에서 생성한 파일에 등록합니다.

    <bean id="filterChainProxy"
        class="org.acegisecurity.util.FilterChainProxy">
    </bean>

그리고 다시 web.xml로 돌아갑니다. 위에서 작성한 스프링 애플리케이션 컨텍스트 파일을 스프링이 사용할 수 있도록 설정해 주어야 합니다. 그렇게 하기 위해서 필요한 것이, ContextLoaderListener 이며, 이 녀석을 등록하면 <context-param> 엘리먼트로 등록되어 있는 정보를 바탕으로 스프링 애플리케이션 컨텍스트 파일을 읽어옵니다.

즉 web.xml 설정에 다음의 코드를 추가합니다.

    <listener>
        <listener-class>
            org.springframework.web.context.ContextLoaderListener
        </listener-class>
    </listener>

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/acegi-config.xml</param-value>
    </context-param>

이제 web.xml과는 영원히 안녕입니다. 지금까지 web.xml에 추가한 내용은 filter, filter-mapping, listener, context-param 이렇게 네 개입니다.