@Async与JavaMelody @MonitoredWithSpring不起作用

时间:2016-07-18 12:45:21

标签: java spring asynchronous java-melody spring-async

我的代码执行异步时遇到问题。 方法 startConversion()应该被称为异步。呼叫转移AOP代理。

分离的一切工作正常。当我整理@Async和@MonitoredWithSpring注释时出现问题

javamelody在第一个xml中的webxml中定义 - 确定

Spring异步支持在xml中是不确定的 - 确定

代码在没有@MonitoredWithSpring的情况下运行良好。 但我需要监控这个bean。

示例代码:

@MonitoredWithSpring //L1 - if this line removed @async will work
public interface IOfficeConversionService {
    void startConversion ();
}

实施班级

@Service
public class COfficeConversionSevice implements IOfficeConversionService {
    @Override
    @Transactional
    @Async ("officeFileConversionExecutor")
    public void startConversion () {
         //ASYNC work
    }
}   
  
      
  • 如果L1存在,代码将调用方法startConversion() synchronusly
  •   
  • 没有L1,一切正常,方法startConversion()在新线程中被称为异步
  •   

在stacktrace中甚至不创建异步切入点。 @Async注释永远不会被其postProcessor处理。 @Transactional工作,并创建交易。初始化没有错误

Spring配置

<context:annotation-config />
<aop:aspectj-autoproxy />

<task:executor id="mailexecutor" pool-size="25-100" queue-capacity="1000" rejection-policy="ABORT"  />
<task:executor id="pnpexecutor" pool-size="5"  />
<task:executor id="officeFileConversionExecutor" pool-size="5"  />
<task:scheduler id="systemScheduler" pool-size="5" />
<task:annotation-driven executor="mailexecutor" scheduler="systemScheduler"/>
你能帮帮我吗?一些建议?
我没有想法。

0 个答案:

没有答案