2011-08-23 3 views
2

org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean이 호출되기 전에 몇 가지 작업을 수행해야합니다. 따라서 나는 표현식을 사용하고있다.AOP 표현식 문제

@Around("execution. (*org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.*(..)").

하지만 예외가

org.springframework.beans.factory.BeanCreationException: Error creating beanwithname 'org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0': Initialization of bean failed; nested exception is java.lang.IllegalArgumentException: Pointcut is not well-formed: expecting 'name pattern' at character position 80. 

당신은 내가 여기에 잘못하고 있어요 것이 무엇인지 말해 주시겠습니까 말하는거야?

답변

4

은 *와 org.springframework.orm.jpa 사이에 공백 문자 ...

시작 *이 메소드의 반환 유형에 대한 와일드 카드있을 필요가있다.

+0

메시지 받기 빈 초기화가 실패했습니다. 중첩 예외는 java.lang.IllegalArgumentException : Pointcut이 형식이 올바르지 않습니다. 문자 위치 0에서 ')'을 기대합니다. 이제 표현식은 @Around ("실행 (* org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean. * (..)") – nobody

+0

@Around ("실행 (* org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean. * (..)) ") – nobody

+0

답변을 주셔서 감사합니다. 그러나 그 이유는 무엇입니까? – nobody