--- /dev/null
+<?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:tx="http://www.springframework.org/schema/tx"
+ xmlns:p="http://www.springframework.org/schema/p"
+
+ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
+ http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">
+
+ <bean name="props" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
+ p:order="-10"
+ p:ignoreResourceNotFound="false"
+ >
+ <property name="locations">
+ <list>
+ <value>classpath:/spring-persistence-context.properties</value>
+ <value>classpath:/hhv-test-datamodel-domain-context.properties</value>
+ </list>
+ </property>
+ </bean>
+
+
+ <!--<bean id="transactionManager" class="${spring.jta.transaction.manager}"-->
+ <!--depends-on="userTransactionService"-->
+ <!--p:transactionManager-ref="atomikosTransactionManager"-->
+ <!--p:userTransaction-ref="atomikosUserTransaction"-->
+ <!-->-->
+ <!--</bean>-->
+
+ <bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager"
+ depends-on="userTransactionService"
+ p:transactionManager-ref="atomikosTransactionManager"
+ p:userTransaction-ref="atomikosUserTransaction"
+ >
+ </bean>
+
+
+ <tx:annotation-driven transaction-manager="transactionManager"/>
+
+ <!--<bean id="localLogAdministrator" class="com.atomikos.icatch.admin.imp.LocalLogAdministrator"/>-->
+
+ <bean id="userTransactionService"
+ class="com.atomikos.icatch.config.UserTransactionServiceImp"
+ depends-on="props"
+ init-method="init" destroy-method="shutdownForce">
+ <constructor-arg>
+ <!-- IMPORTANT: specify all Atomikos properties here -->
+ <props>
+ <prop key="com.atomikos.icatch.service">
+ com.atomikos.icatch.standalone.UserTransactionServiceFactory
+ </prop>
+ </props>
+ </constructor-arg>
+ <!-- property name="initialLogAdministrators">
+ <list>
+ <ref bean="localLogAdministrator"/>
+ </list>
+ </property -->
+ </bean>
+
+ <!--
+ Construct Atomikos UserTransactionManager, needed to configure Spring
+ -->
+ <bean id="atomikosTransactionManager"
+ class="com.atomikos.icatch.jta.UserTransactionManager"
+ init-method="init" destroy-method="close"
+ depends-on="userTransactionService"
+ p:startupTransactionService="false"
+ p:forceShutdown="false"
+ >
+ </bean>
+
+ <!--
+ Also use Atomikos UserTransactionImp, needed to configure Spring
+ -->
+ <bean id="atomikosUserTransaction"
+ class="com.atomikos.icatch.jta.UserTransactionImp"
+ depends-on="userTransactionService"
+ p:transactionTimeout="300"
+ >
+ </bean>
+
+ <bean id="rawDataSource" class="com.atomikos.jdbc.nonxa.AtomikosNonXADataSourceBean"
+ depends-on="props"
+ init-method="init" destroy-method="close"
+ p:uniqueResourceName="${atomikos.dataSource.uniqueResourceName}"
+ p:url="${dataSource.url}"
+ p:driverClassName="${dataSource.driverClassName}"
+ p:user="${dataSource.user}"
+ p:password="${dataSource.password}"
+ p:minPoolSize="0"
+ p:maxPoolSize="2"
+ >
+ </bean>
+
+ <bean id="initScriptRunner" class="org.bitbucket.fbascheper.tutorial.envers.util.InitScriptRunner$InitScriptRunnerImpl"
+ depends-on="rawDataSource">
+ <constructor-arg index="0" ref="rawDataSource" />
+ <constructor-arg index="1" value="classpath:sql/drop-tables-hsqldb.sql" />
+ <constructor-arg index="2" value="classpath:sql/create-tables-hsqldb.sql" />
+ </bean>
+
+ <bean id="dataSource" class="org.bitbucket.fbascheper.tutorial.envers.util.InitScriptRunningDataSourceFactoryBean"
+ factory-method="dataSourceFactory">
+ <constructor-arg index="0" ref="initScriptRunner" />
+ </bean>
+
+</beans>