2012-08-17 69 views
2

我有两个应用程序都使用@Scheduled注释。两者都有自己的应用程序上下文xml,其中包含<task:annotation-driven />。现在,当我部署这两个应用程序时,我收到了这个例外spring 3 @schedule issue

org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:上下文中只能存在一个AsyncAnnotationBeanPostProcessor。

有人可以解释我为什么得到它吗?

在此感谢

+1

能否请你澄清你通过部署这两个应用的意思 - 这些是两个完全独立的Web应用程序或者你一起以某种方式之前,将它们组合起来(说成同一场战争)部署。你是否将一个spring上下文导入另一个等等。 – 2012-08-17 01:48:34

+0

我建议将''从应用程序的servlet上下文移动到共享应用程序上下文。 – 2012-08-17 10:21:21

+0

没有这两个应用程序不同和没有。一个是相互导入上下文。 – user509755 2012-08-17 11:56:59

回答

0

即使我遇到过这样的问题。但与<tx:annotation-driven/>

我认为问题是在配置XML。经过一些试验和错误的方法后,运行该应用程序。

我已经配置了这样的<tx:annotation-driven/>

<beans xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation= "http://www.springframework.org/schema/tx" </beans>

但改变这个作为异常下方后得到了解决

<beans xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation= "http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.1.xsd" </beans>

我想你可以通过配置弹簧解决问题像这样的“任务”

<beans xmlns:task="http://www.springframework.org/schema/task" xsi:schemaLocation= "http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd" </beans>

希望这可以帮助,感谢