You need
<aop:aspectj-autoproxy>
<aop:include name="userDeletionAspect"/>
</aop:aspectj-autoproxy>
instead of
<aop:aspectj-autoproxy/>
FYI - You can target either concrete classes or implementations of a specific interface in your pointcut expressions.
Spring can only target public methods so you can remove the 'public' part from your pointcut expressions. Also, if you want you can declare your advice along with the pointcut expression like so:
@Before("execution(void aa.bb.cc.dd.UserDaoImpl.delete(..))")
public void notifyDeletion(JoinPoint jp) {
System.out.println("pointcut executed");
}
You should be good to go now, but If you are still having some issues, here's a simple logging example using Spring AOP - logging with AOP in spring?