上下文中存在多个TaskScheduler和/或ScheduledExecutorService

时间:2016-11-23 10:48:47

标签: spring spring-integration

我有两个调度程序,一个是注释驱动的,另一个是用“任务”定义的普通弹簧调度程序

但在将下面的代码添加到我的项目上下文后,我得到了例外:

  

java.lang.IllegalStateException:多个TaskScheduler和/或   ScheduledExecutorService存在于上下文中。删除除一个以外的所有   豆子;或者实现SchedulingConfigurer接口并调用   ScheduledTaskRegistrar #setScheduler明确在   configureTasks()回调。找到以下bean:[myappScheduler,   的TaskScheduler]

<file:inbound-channel-adapter id="scanIn" directory="file:${uploadfilepath}"  auto-startup="true" prevent-duplicates="true" filename-regex="^.*\.(csv|xml)$" >
    <int:poller id="poller" fixed-delay="60000" />
</file:inbound-channel-adapter>

<int:service-activator input-channel="scanIn"  output-channel="scanOut" ref="scanHandler" />

<file:outbound-channel-adapter id="scanOut"  directory="file:${inputfiles.archive.path}" delete-source-files="true"/>

<bean id="scanHandler" class="com.rs.ibgt.pf.intg.VirusScanHandler" />

请提出任何解决方案..

1 个答案:

答案 0 :(得分:0)

Spring Integration添加了自己的(taskScheduler)bean。您需要显示其余的配置 - 看起来您正在尝试自动连接调度程序;如果是这样,您需要添加@Qualifier或为其命名以匹配您实际尝试注入的bean(例如myappScheduler)。