32.7. 配置 TransactionManager
JpaComponent 会自动从 Registry 中查找 TransactionManager。如果 Camel 找不到注册的任何 TransactionManager 实例,它将查找 TransactionTemplate,并尝试从中提取 TransactionManager。
如果 registry 中没有 TransactionTemplate,JpaEndpoint 将自动创建自己的 TransactionManager 实例,这通常是您想要的。
如果找到了超过 TransactionManager 的单个实例,Camel 将记录 WARN。在这种情况下,您可能想要实例化和明确配置引用 myTransactionManager 事务管理器的 JPA 组件,如下所示:
<bean id="jpa" class="org.apache.camel.component.jpa.JpaComponent"> <property name="entityManagerFactory" ref="myEMFactory"/> <property name="transactionManager" ref="myTransactionManager"/> </bean>
<bean id="jpa" class="org.apache.camel.component.jpa.JpaComponent">
<property name="entityManagerFactory" ref="myEMFactory"/>
<property name="transactionManager" ref="myTransactionManager"/>
</bean>