Spring boot 如何为Springboot H2数据源启用XA?

Spring boot 如何为Springboot H2数据源启用XA?,spring-boot,h2,xa,Spring Boot,H2,Xa,我应该在下面的spring boot H2数据源配置中更改什么,以确保XA已启用 @Bean //@ConfigurationProperties(prefix = "spring.datasource") public DataSource h2() { String url = "jdbc:h2:mem:mydatabase;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE"; return DataSourceBuilder.create()

我应该在下面的spring boot H2数据源配置中更改什么,以确保XA已启用

@Bean
//@ConfigurationProperties(prefix = "spring.datasource")
public DataSource h2() {
    String url = "jdbc:h2:mem:mydatabase;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE";
    return DataSourceBuilder.create()
            .url(url)
            .driverClassName("org.h2.Driver")
            .build();
}
@Bean(name = "entityManagerFactory")
public LocalContainerEntityManagerFactoryBean entityManagerFactory(EntityManagerFactoryBuilder builder) {
    return builder
            .dataSource(h2())
            .packages("demo.h2xa.domain")
            .persistenceUnit("mydomainPersistanceUnit")
            .build();
}
参考:

将org.h2.jdbcx.JdbcDataSource.class添加为类型有帮助

public DataSource h2() {
    String url = "jdbc:h2:mem:mydatabase;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE";
    return DataSourceBuilder.create()
            .url(url)
            .driverClassName("org.h2.Driver")
            .type(org.h2.jdbcx.JdbcDataSource.class) //xa datasource
            .build();
}