2017-01-25 10 views
0

를 포인트 컷? 내가 그 클래스에서 포인트 컷을 사용하는 경우스프링 AspectJ를 재사용 클래스

, 나는 오류 얻을 :

Caused by: java.lang.IllegalArgumentException: error at ::0 can't find referenced pointcut inServiceLayer 
    at org.aspectj.weaver.tools.PointcutParser.parsePointcutExpression(PointcutParser.java:301) 
    at org.springframework.aop.aspectj.AspectJExpressionPointcut.buildPointcutExpression(AspectJExpressionPointcut.java:207) 
    at org.springframework.aop.aspectj.AspectJExpressionPointcut.checkReadyToMatch(AspectJExpressionPointcut.java:193) 
    at org.springframework.aop.aspectj.AspectJExpressionPointcut.getClassFilter(AspectJExpressionPointcut.java:170) 
    at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:194) 
    at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:248) 

을하지만 기존의 측면에서 방법을 포함 할 경우, 그것을 잘 작동합니다.

감사합니다.

답변

0

이것이 예입니다.

SystemArchitecture 클래스에는 주석에서 SystemArchitecture pointcuts를 참조하여 조언을 정의하는 많은 Pointcut 및 AfterExample, AfterReturningExample 등의 클래스가 정의되어 있습니다.

모든 클래스에는 @Aspect가 주석으로 지정됩니다.

+0

그런 식으로 작동하지 않습니다, 나는 내 질문을 추가했습니다. – krmanish007

0

모두 내 잘못 이었지만 패키지와 클래스 이름을 포함하는 완전한 메소드 이름을 정의하지 않았습니다.

+0

질문을 할 때 부족한 정보를 공유 할 때 문제가 있습니다. 다른 사람이 도움을 줄 수 없기 때문에 스스로 해결책을 찾아야합니다. 다음 번에 문제를 재현 할 수 있도록 [SSCCE] (http://sscce.org/)를 공유하십시오. 소스 코드 및 구성이없는 스택 추적 만이 다른 방법과 마찬가지로 쓸모가 없습니다. ;-) P.S. : 질문을 끝내기 위해 자신의 대답을 수락 할 수 있지만 아직 열어 놓았다. – kriegaex