我的项目基于spring framework 2.5.4。我尝试为某些控制器添加方面(我使用aspectj 1.5.3)。Aspectj没有捕获到Spring框架中的所有事件?
我已经启用自动代理在应用servlet.xml中,刚刚粘贴这些行到XML文件的末尾:
<aop:aspectj-autoproxy />
<bean id="auditLogProcessor" class="com.example.bg.web.utils.AuditLogProcessor" />
创建方面:
package com.example.bg.web.utils;
import org.apache.log4j.Logger;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
@Aspect
public class AuditLogProcessor
{
private final static Logger log = Logger.getLogger(AuditLogProcessor.class);
@After("execution(* com.example.bg.web.controllers.assets.AssetThumbnailRebuildController.rebuildThumbnail(..))")
public void afterHandleRequest() {
log.info("test111");
}
@After("execution(* com.example.bg.web.controllers.assets.AssetThumbnailRebuildController.rebuildThumbnail(..))")
public void afterRebuildThumbnail() {
log.info("test222");
}
}
我的控制器:
class AssetAddController implements Controller
class AssetThumbnailRebuildController extends MultiActionController
当我在aspect advisors中设置制动点并调用控制器时,我只捕获afterHandleRequest()但不是afterRebildThumbnail() 我做错了什么?
注意
我问代表我朋友的这个问题,谁不具有左右的测试访问,我没有什么线索它的全部。
编辑
有的确有些拼写错误,谢谢Cheekysoft。但问题仍然存在。