logging to file improved
[cdmlib.git] / cdmlib-remote / src / main / webapp / WEB-INF / applicationContext.xml
index 7c69b9f30e73e86ed01a76edac302e431caf14ca..14a54c30b74f2bedec049189e7e8d848ae6e811a 100644 (file)
@@ -7,30 +7,60 @@
     http://www.springframework.org/schema/context   http://www.springframework.org/schema/context/spring-context-2.5.xsd
     http://www.springframework.org/schema/tx   http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
     ">
-
-    <context:component-scan base-package="eu.etaxonomy.cdm" />
+       
+       <!-- include default application context and customization -->
+     <import resource="classpath:/eu/etaxonomy/cdm/defaultApplicationContext.xml"/>
+     <bean id="persistentTermInitializer" class="eu.etaxonomy.cdm.database.PersistentTermInitializer">
+       <property name="omit" value="false" />
+     </bean>
+    <context:component-scan base-package="eu/etaxonomy/cdm/ext" />
     
-    <import resource="classpath:/eu/etaxonomy/cdm/persistence.xml" />
-  
-    <bean id="dataSource"  lazy-init="true" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
-        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
-        <property name="url" value="jdbc:mysql://192.168.2.10/cdm_build"/>
-        <property name="username" value="edit"/>
-        <property name="password" value="wp5"/>
-    </bean>
+    <import resource="classpath:/eu/etaxonomy/cdm/remote.xml"/>
     
-    <!-- This configures default properties, which can overridden with the file specified by the location property -->
-    <bean id="hibernateProperties" 
-        class="org.springframework.beans.factory.config.PropertiesFactoryBean">
-        <property name="properties">
-            <props>
-                <prop key="hibernate.hbm2ddl.auto">validate</prop>
-                <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
-                <prop key="hibernate.cache.provider_class">org.hibernate.cache.NoCacheProvider</prop>
-                <prop key="hibernate.show_sql">false</prop>
-                <prop key="hibernate.format_sql">false</prop>
-            </props>
+    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
+               <property name="properties">
+                 <props>
+                     <prop key="eu.etaxonomy.cdm.base.path">${user.home}/.cdmLibrary/</prop>
+                     <prop key="eu.etaxonomy.cdm.search.index.path">${user.home}/.cdmLibrary/index/</prop>
+                     <prop key="eu.etaxonomy.cdm.ehcache.diskstore.path">${user.home}/.cdmLibrary/ehcache</prop>
+                 </props>
         </property>
+       </bean>
+    <!-- enable the configuration of transactional behavior based on annotations -->
+    <tx:annotation-driven transaction-manager="transactionManager"/>
+    
+    <!-- import additional beans into the root context -->
+    <import resource="applicationContext.views.xml"/>
+    
+    <!-- CONFIGURE WEB APPLICATION HERE -->
+    <import resource="datasources/configurable.xml" />
+    
+    <context:annotation-config/>
+    <bean class="eu.etaxonomy.cdm.remote.config.LoggingConfigurer">
     </bean>
+    
+    
+    <!-- OAI-PMH TODO externalize? -->
+     <bean name="taxonOaiPmhController" class="eu.etaxonomy.cdm.remote.controller.oaipmh.TaxonOaiPmhController">
+          <property name="cachingModel" ref="taxonOaiPmhCacheMapping"/>
+        </bean>
+       
+       <bean name="taxonOaiPmhCacheMapping" class="org.springmodules.cache.provider.ehcache.EhCacheCachingModel">
+               <property name="cacheName" value="eu.etaxonomy.cdm.remote.controller.TaxonOaiPmhController.resumptionToken"/>
+       </bean>
+       <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
+    <property name="configLocation" value="classpath:/eu/etaxonomy/cdm/remote/ehcache.xml" />
+        <property name="shared" value="true"/>
+    </bean>
+
+       <bean id="serializableFactory" class="org.springmodules.cache.serializable.XStreamSerializableFactory"/>
+       
+       <bean id="cacheProviderFacade" class="org.springmodules.cache.provider.ehcache.EhCacheFacade">
+           <property name="cacheManager" ref="cacheManager" />
+           <property name="serializableFactory" ref="serializableFactory"/>
+       </bean>
+    <!-- 
+     -->       
 
 </beans>
\ No newline at end of file