2011-08-20 10 views
8

wyjątek w wątku „głównym” org.springframework.beans.factory.BeanCreationException: Błąd tworzenia ziarna z nazwą „org.springframework.aop.aspectj.AspectJPointcutAdvisor # 0” Nie udało się utworzyć instancji bean; Wyjątkiem jest zagnieżdżony org.springframework.beans.BeanInstantiationException: Nie można instancję klasy fasoli [org.springframework.aop.aspectj.AspectJPointcutAdvisor] Konstruktor wyrzucił wyjątkiem; Wyjątkiem jest zagnieżdżony java.lang.IllegalArgumentException: punkt przekroju nie jest sensowne: oczekując 'wzorzec nazwy' w pozycji 49 postaci wykonania (* com.idol.performers.Performer.perform (..)Wiosna AOP punktu przekroju nie jest dobrze uformowane

?

Co jest nie tak z moim punktu przekroju W książce mówi, że

(..) // means taking any arguments 

mój xml:

... 
<aop:before pointcut="execution(*com.idol.performers.Performer.perform(..))" method="takeSeats"/> 
... 

Odpowiedz

11

Spróbuj tego:

<aop:before pointcut="execution(* com.idol.performers.Performer.perform(..))" method="takeSeats"/> 

Kwestia jest taka, że ​​nie masz miejsca między * i com.idol.performers.Performer.perform(..)

+0

Czasami analizowania błędów mogą prowadzić do zasłaniania wiadomości. W tym przypadku pomyślał, że symbol wieloznaczny '*' był częścią 'com.idol.performers.Performer.perform', co oznacza, że ​​oczekiwał tego typu jako typu zwracającego, a nie tylko' * '. Następnie sugeruje, że zanim dostrzeże "(", że musi mieć "wzorzec nazwy" oznaczający nazwę metody, dlatego przestrzeń jest niezbędna i to naprawdę chce, żeby próbowała powiedzieć, jak najlepiej to zrobić mógłby. –

2

Powinna istnieć przestrzeń pomiędzy * i com.idol.performers.Performer.perform (..)

Powiązane problemy