AOP建议未被调用

时间:2012-11-15 10:38:49

标签: java aop

我在spring中定义了以下AOP配置:

<aop:config>
   <aop:aspect ref="aopAdvice">
        <aop:around
            pointcut="execution(* com.bis.client.auto.ClientHandler.sendCanonical(..))"
            method="methodDuration"/>

    </aop:aspect>
    <aop:aspect ref="aopAdvice">
        <aop:around
            pointcut="execution(public * com.bis.client.auto.MessageHandlerImpl.messageArrived(..))"
            method="methodDuration"/>
    </aop:aspect>
</aop:config>

我基本上希望在调用sendCanonical方法或message方法时调用methodDuration方法。

问题是建议永远不会被调用,即使我100%确定这些方法被调用。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

确保您已定义。还要确保所有其他配置与springsource文档中定义的相同。

如果上述情况正常,则将切入点更改为“执行(public * *(..))”。这削减了每个班级的每一种公共方法。通过这样做,应该为您的应用中的每个公共方法调用AOP建议。如果这样可以正常工作,那意味着您的配置是正确的。如果这不起作用,那么请确保您的配置不正常。所以修改配置&amp;试试这一步。

一旦上面的步骤工作正常,然后慢慢逐个修改切入点,比如首先添加类名(这应该删除该类中的每个公共方法),然后添加方法名等。

祝你好运!!!!!