我的项目基于
spring framework 2.5.4.我尝试为某些控制器添加方面(我使用aspectj 1.5.3).
我在application-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
当我在方面顾问和调用控制器中设置制动点时,我只捕获afterHandleRequest()而不是afterRebildThumbnail()
我做错了什么?
注意
我代表我的朋友问这个问题,他的朋友无法访问SO beta,我也不知道它是什么.
编辑
确实有一些拼写错误,谢谢Cheekysoft.但问题仍然存在.