Error de @Scheduled de Spring: solo puede existir un AsyncAnnotationBeanPostProcessor en el contexto

Estoy probando la anotación @Scheduled de Spring 3. Aquí está mi configuración (app.xml):

<?xml version="1.0" encoding="UTF-8"?>
<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:aop="http://www.springframework.org/schema/aop"
  xmlns:tx="http://www.springframework.org/schema/tx"
  xmlns:task="http://www.springframework.org/schema/task"
  xsi:schemaLocation="
      http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
      http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
      http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
      http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
      http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd
      "
>

  <context:component-scan base-package="destiny.web"/>  
  <context:annotation-config/>
  // other beans

  <task:annotation-driven executor="myExecutor" scheduler="myScheduler"/>
  <task:executor  id="myExecutor"  pool-size="5"/>
  <task:scheduler id="myScheduler" pool-size="10"/>
</beans>

Y esta es mi clase de servicio:

@Service
public class ServiceImpl implements Service , Serializable
{
  //other injections

  @Override
  @Transactional
  public void timeConsumingJob()
  {
    try
    {
      Thread.sleep(10*1000);
    }
    catch (InterruptedException e)
    {
      e.printStackTrace();
    }
  }

  @Override
  @Scheduled(cron="* * * * * ?") 
  public void secondly()
  {
    System.err.println("secondly : it is " + new Date());
  }
}

Funciona bien cuando pruebo en mi eclispe + junit, cuando pruebo un método timeConsumingJob, puedo ver en segundo lugar () continúa enviando mensajes en segundo lugar.

Pero cuando se implementa en un contenedor (Resina / 4.0.13), arroja:

[11-03-26 12:10:14.834] {main} org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Only one AsyncAnnotationBeanPostProcessor may exist within the context.
Offending resource: class path resource [app.xml]
 at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
 at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
 at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:72)
 at org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser.parse(AnnotationDrivenBeanDefinitionParser.java:82)

Busqué, pero rara vez encuentro situaciones similares, creo que es la configuración más básica, pero no sé por qué no funciona.

¿Puede alguien echarle un vistazo? Muchas gracias

(Primavera 3.0.5, Resina 4.0.13)

------------actualizad ---------

Después de profundizar, descubrí que app.xml es importado por otro xml. Quizás esta es la razón por la quetask:annotation-driven no funciona

Bueno, después de reorganizar la ubicación de algunos frijoles, está resuelto, pero todavía me siento perplejo. (Porque funcionó bien, y other.xml necesita beans en app.xml)

Respuestas a la pregunta(5)

Su respuesta a la pregunta