| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- ~ Copyright 1999-2019 Seata.io Group.
- ~
- ~ Licensed under the Apache License, Version 2.0 (the "License");
- ~ you may not use this file except in compliance with the License.
- ~ You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing, software
- ~ distributed under the License is distributed on an "AS IS" BASIS,
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ~ See the License for the specific language governing permissions and
- ~ limitations under the License.
- -->
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:jdbc="http://www.springframework.org/schema/jdbc"
- xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
- http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
- http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc.xsd">
- <bean id="dataSource" class="org.h2.jdbcx.JdbcConnectionPool" destroy-method="dispose">
- <constructor-arg>
- <bean class="org.h2.jdbcx.JdbcDataSource">
- <property name="URL" value="jdbc:h2:mem:seata_saga" />
- <property name="user" value="sa" />
- <property name="password" value="sa" />
- </bean>
- </constructor-arg>
- </bean>
- <!-- 初始化数据表结构 -->
- <jdbc:initialize-database data-source="dataSource">
- <jdbc:script location="classpath:saga/sql/h2_init.sql" />
- </jdbc:initialize-database>
- <bean id="stateMachineEngine" class="io.seata.saga.engine.impl.ProcessCtrlStateMachineEngine">
- <property name="stateMachineConfig" ref="dbStateMachineConfig"></property>
- </bean>
- <bean id="dbStateMachineConfig" class="io.seata.saga.engine.config.DbStateMachineConfig">
- <property name="dataSource" ref="dataSource"></property>
- <property name="tablePrefix" value="seata_"></property>
- <property name="resources" value="saga/statelang/*.json"></property>
- <property name="enableAsync" value="true"></property>
- <property name="threadPoolExecutor" ref="threadExecutor"></property>
- <property name="applicationId" value="test_saga"></property>
- <property name="txServiceGroup" value="default_tx_group"></property>
- <property name="sagaTransactionalTemplate" ref="mockSagaTransactionTemplate"/>
- </bean>
- <bean id="threadExecutor"
- class="org.springframework.scheduling.concurrent.ThreadPoolExecutorFactoryBean">
- <property name="threadNamePrefix" value="SAGA_ASYNC_EXE_" />
- <property name="corePoolSize" value="1" />
- <property name="maxPoolSize" value="20" />
- <property name="queueCapacity" value="100" />
- <property name="rejectedExecutionHandler" ref="callerRunsPolicy" />
- </bean>
- <bean name="callerRunsPolicy" class="java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy">
- </bean>
- <bean class="io.seata.saga.rm.StateMachineEngineHolder">
- <property name="stateMachineEngine" ref="stateMachineEngine"/>
- </bean>
- <bean id="demoService" class="io.seata.saga.engine.mock.DemoService"/>
- <bean id="mockSagaTransactionTemplate" class="io.seata.saga.engine.mock.MockSagaTransactionTemplate"/>
- </beans>
|