为什么我的Spring AOP方面在我的单元测试中工作,而不是我的webapp?

时间:2010-07-28 08:17:55

标签: spring aop

我的单元测试中有一个方面正常工作,从实际方法打印日志消息,然后从应用的方面打印。

在运行我的webapp时,我只看到应用'@afterReturning'建议的结果,我的方法不会先执行。

我的配置:

<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:aop="http://www.springframework.org/schema/aop"
   xsi:schemaLocation="http://www.springframework.org/schema/beans 
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/aop 
   http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">

  <aop:aspectj-autoproxy proxy-target-class="true" />

  <bean id="loggingAspect" class="com.mypackage.MyAspect" />

</beans>

有什么想法吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您提供的信息不足以进行分析。请查看以下网络应用中的内容,

1)确认您希望被您的建议截获的方法属于spring bean class&amp;不是春天以外定义的其他servlet或其他类。如果任何类没有通过spring初始化,则aop建议不能应用于该类。

2)验证上面的aop&amp;建议配置放在适当的上下文xml春天。与spring-mvc一样,您必须明确定义应用程序上下文xml的名称。在那个应用程序上下文中,只需要编写aop配置。

3)验证您的切入点是否适合找到确切的类&amp;建议方法。

看看这些东西是否到位。