使用activiti-cfg.xml时,春季应用程序上下文加载失败

时间:2020-07-05 09:46:28

标签: spring activiti spring-context

我正在尝试使用ClassPathXmlApplicationContext加载具有以下详细信息的activiti-cfg.xml。

ApplicationContext applicationContext = new ClassPathXmlApplicationContext("activiti-cfg.xml");
Getting Error:
  Caused by: java.lang.IllegalStateException: Already value [org.springframework.jdbc.datasource.ConnectionHolder] for key [org.apache.tomcat.dbcp.dbcp2.BasicDataSource] bound to thread [localhost-startStop-1]

任何解决此问题的建议都会有所帮助。

activiti-cfg.xml

<context:annotation-config />

<tx:annotation-driven transaction-manager="transactionManager" />
<context:component-scan base-package="com.dds.flow" />
<!-- Configuration of Datasource -->
<bean id="adminDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/admin" />
    <property name="resourceRef" value="false" />
</bean>
<bean id="sampleDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/sample" />
    <property name="resourceRef" value="false" />
</bean>

<!-- Configuration of transaction manager -->
<bean id="adminDSTransactionManager"
    class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="adminDataSource" />
</bean>
<bean id="sampleDSTransactionManager"
    class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="sampleDataSource" />
</bean>

<bean id="transactionManager"
    class="org.springframework.data.neo4j.transaction.ChainedTransactionManager">
    <constructor-arg>
        <list>
            <ref bean="adminDSTransactionManager" />
            <ref bean="sampleDSTransactionManager" />
        </list>
    </constructor-arg>
</bean>


<bean name="quartzScheduler"
    class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="dataSource" ref="adminDataSource"></property>
    <property name="configLocation" value="quartz.properties"></property>
    <property name="transactionManager" ref="transactionManager"></property>
    <property name="jobFactory">
        <bean class="org.springframework.scheduling.quartz.SpringBeanJobFactory"></bean>
    </property>
</bean>

<bean name="simpleTriggerBean"
    class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean" scope="prototype">
    <property name="group" value="WorkflowTriggerGroup"></property>
    <property name="jobGroup" value="WorkflowJobGroup"></property>
</bean>

<bean id="jobTriggerFactory"
    class="org.springframework.beans.factory.config.ObjectFactoryCreatingFactoryBean">
    <property name="targetBeanName">
        <idref bean="simpleTriggerBean" />
    </property>
</bean>



<!-- Configuration of Spring into Activiti -->
<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
    <property name="dataSource" ref="adminDataSource" />
    <property name="transactionManager" ref="transactionManager" />
    <property name="databaseSchemaUpdate" value="true" />
    <property name="asyncExecutorActivate" value="false" />
    <property name="history" value="audit" />
</bean>
<bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">
    <property name="processEngineConfiguration" ref="processEngineConfiguration" />
</bean>
 
<bean id="repositoryService" factory-bean="processEngine"
    factory-method="getRepositoryService" />
<bean id="runtimeService" factory-bean="processEngine"
    factory-method="getRuntimeService" />
<bean id="taskService" factory-bean="processEngine"
    factory-method="getTaskService" />
<bean id="historyService" factory-bean="processEngine"
    factory-method="getHistoryService" />
<bean id="managementService" factory-bean="processEngine"
    factory-method="getManagementService" />

</beans>

0 个答案:

没有答案