AspectJ :Проблема при объединении нескольких точечных разрезов в рекомендации @Around

Я новичок в AspectJ, поэтому, пожалуйста, помогите мне решить проблему, возникающую в соответствии с приведенным ниже подходом.

    @Aspect
    public class TestAop {

    @Pointcut("execution(public * com.packg.foo.ClassOne.*(..))")
    public void fooPoint()

    @Pointcut("execution(public * com.packg.cat.ClassTwo.*(..))")
    public void catPoint()

    @Pointcut("execution(public * com.packg.roo.ClassThree.*(..))")
    public void rooPoint()

    @Around("fooPoint() || catPoint() || rooPoint()") 
    public Object myAdvice(ProceedingJoinPoint joinPoint) {
    //do something like joint proceed and all
    }

Когда не работает? Если я объединим все три pointcut с OR.

Когда работает? Если я оставлю только две точки, это работает.

Нарушаю ли я какие-либо правила совета @around. Возможно ли иметь несколько исполнений/pointcuts?

Надеюсь на ответы...

7
задан mdparthi 18 July 2012 в 13:09
поделиться