Java 使用事务设置Jackrabbit-Oak

Java 使用事务设置Jackrabbit-Oak,java,transactions,jackrabbit-oak,Java,Transactions,Jackrabbit Oak,我让Jackrabbit Oak在MongoDB实例上运行。非常简单,并且非常直接地来自docs(Sprint引导应用程序): 现在,如果我想要交易,从这里到哪里?简单地将@Transactional添加到服务方法不会改变任何事情 在我们以前的“老式”Jackrabbit应用程序中,我们使用了 <bean id="transactionManager" class="org.jencks.factory.TransactionManagerFactoryBean" /> <b

我让Jackrabbit Oak在MongoDB实例上运行。非常简单,并且非常直接地来自docs(Sprint引导应用程序):

现在,如果我想要交易,从这里到哪里?简单地将@Transactional添加到服务方法不会改变任何事情

在我们以前的“老式”Jackrabbit应用程序中,我们使用了

<bean id="transactionManager" class="org.jencks.factory.TransactionManagerFactoryBean" />

<bean id="jcrConnectionManager" class="org.jencks.factory.ConnectionManagerFactoryBean">
    <property name="transactionManager" ref="transactionManager" />
    <property name="transaction" value="xa" />
    <property name="poolMinSize" value="1" />
    <property name="poolMaxSize" value="50" />
    <property name="connectionMaxIdleMinutes" value="5" />
    <property name="partitionStrategy" value="by-connector-properties" />
</bean>

<bean id="jcrManagedConnectionFactory"
    class="org.apache.jackrabbit.jca.JCAManagedConnectionFactory">
    <property name="configFile" value="classpath:repository.xml" />
    <property name="homeDir" value="/repository" />
</bean>

<bean id="repository"
    class="org.springframework.jca.support.LocalConnectionFactoryBean">
    <property name="managedConnectionFactory" ref="jcrManagedConnectionFactory" />
    <property name="connectionManager" ref="jcrConnectionManager" />
</bean>

但是Oak并没有附带像JCAManagedConnectionFactory这样的类

<bean id="transactionManager" class="org.jencks.factory.TransactionManagerFactoryBean" />

<bean id="jcrConnectionManager" class="org.jencks.factory.ConnectionManagerFactoryBean">
    <property name="transactionManager" ref="transactionManager" />
    <property name="transaction" value="xa" />
    <property name="poolMinSize" value="1" />
    <property name="poolMaxSize" value="50" />
    <property name="connectionMaxIdleMinutes" value="5" />
    <property name="partitionStrategy" value="by-connector-properties" />
</bean>

<bean id="jcrManagedConnectionFactory"
    class="org.apache.jackrabbit.jca.JCAManagedConnectionFactory">
    <property name="configFile" value="classpath:repository.xml" />
    <property name="homeDir" value="/repository" />
</bean>

<bean id="repository"
    class="org.springframework.jca.support.LocalConnectionFactoryBean">
    <property name="managedConnectionFactory" ref="jcrManagedConnectionFactory" />
    <property name="connectionManager" ref="jcrConnectionManager" />
</bean>