<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
                http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">

    <!-- component-scan 설정-->
	<context:component-scan base-package="kcc">
	<!-- <context:component-scan base-package="kcc"> -->
		<!-- <context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/>
		<context:include-filter type="annotation" expression="org.springframework.stereotype.Repository"/> -->
		<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
	</context:component-scan>

    <!-- 메시지소스빈 설정 -->
    <bean id="egovMessageSource" class="kcc.com.cmm.EgovMessageSource">
        <property name="reloadableResourceBundleMessageSource">
            <ref bean="messageSource" />
        </property> 
    </bean>
    
    <!-- 프로퍼티 파일 위치 설정 -->
    <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basenames">
            <list>
                <value>classpath:/egovframework/message/com/message-common</value>
                <value>classpath:/egovframework/rte/fdl/idgnr/messages/idgnr</value>
                <value>classpath:/egovframework/rte/fdl/property/messages/properties</value>
            </list>
        </property>
        <property name="cacheSeconds">
            <value>60</value>
        </property>
    </bean>
    
    <!-- Exception 발생시 후처리용 별도작업을 위해 실행환경의 LeveaTrace를 활용하도록 설정 -->
    <bean id="leaveaTrace" class="egovframework.rte.fdl.cmmn.trace.LeaveaTrace">
        <property name="traceHandlerServices">
            <list>
                <ref bean="traceHandlerService" />
            </list>
        </property>
    </bean> 
    <!-- Exception 발생시 후처리용 별도작업을 위해 실행환경의 DefaultTrace Handle Manager 를 활용하도록 설정 -->
    <bean id="traceHandlerService" class="egovframework.rte.fdl.cmmn.trace.manager.DefaultTraceHandleManager">
        <property name="reqExpMatcher">
            <ref bean="antPathMater" />
        </property>
        <property name="patterns">
            <list>
                <value>*</value>
            </list>
        </property>
        <property name="handlers">
            <list>
                <ref bean="defaultTraceHandler" />
            </list>
        </property>
    </bean>
    
    <!-- Exception 발생시 후처리용 별도작업을 위해 실행환경의  AntPathMatcher 를 활용하도록 설정 -->
    <bean id="antPathMater" class="org.springframework.util.AntPathMatcher" />
    <!-- Exception 발생시 후처리용 별도작업을 위해 실행환경의  DefaultTraceHandler 를 활용하도록 설정 egovframework.rte.fdl.cmmn.trace.handler.DefaultTraceHandler -->
    <bean id="defaultTraceHandler" class="kcc.com.cmm.EgovComTraceHandler" />
        
    <!-- For Pagination Tag 설정-->
    <bean id="imageRenderer" class="kcc.com.cmm.ImagePaginationRenderer"/>
    <bean id="imageRendererWeb" class="kcc.com.cmm.ImagePaginationRendererWeb"/>
    <bean id="paginationManager" class="egovframework.rte.ptl.mvc.tags.ui.pagination.DefaultPaginationManager">
        <property name="rendererType">
            <map>
                <entry key="image" value-ref="imageRenderer"/>
                <entry key="imageWeb" value-ref="imageRendererWeb"/>  
            </map>
        </property>
    </bean>
    
    <!-- MULTIPART RESOLVERS -->
    <!-- regular spring resolver -->    
    <bean id="spring.RegularCommonsMultipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="maxUploadSize" value="550000000" />
        <property name="maxInMemorySize" value="100000000" />
    </bean>
    <!-- custom multi file resolver -->    
    <bean id="local.MultiCommonsMultipartResolver" class="kcc.com.cmm.web.EgovMultipartResolver">
        <property name="maxUploadSize" value="550000000" />
        <property name="maxInMemorySize" value="100000000" />
    </bean>
    <!-- choose one from above and alias it to the name Spring expects -->
    <!-- alias name="local.MultiCommonsMultipartResolver" alias="multipartResolver" /-->
    <alias name="spring.RegularCommonsMultipartResolver" alias="multipartResolver" />
       
</beans>
