Намокрям краката си с пролетта. Изтеглих STS и следвам основни примери от Пролет в действие Второ издание. Заседнал съм, когато се опитвам да внедря основен AOP и предполагам, че просто ми липсват някои конкретни библиотеки в моя проект.
Казвам го, защото анотации като @Aspect
не се разпознават в моите класове, както и <aop:config>
в моя xml.
Това са моите Maven зависимости:
- junit-4.7.jar
- пролетен тест-3.0.2.RELEASE.jar
- пролетен контекст-3.0.2.RELEASE.jar
- spring-aop-3.0.2.RELEASE.jar
- aopalliance-1.0.jar
- spring-beans-3.0.2.RELEASE.jar
- spring-core-3.0.2.RELEASE.jar
- commons-logging-1.1.1.jar
- пролетен израз-3.0.2.RELEASE.jar
- spring-asm-3.0.2.RELEASE.jar
- log4j-1.2.14.jar
Моля, уведомете ме какви библиотеки ми липсват и къде да ги намеря.
Благодаря ти!
РЕДАКТИРАНЕ:
Следното:
<bean id="performancePointcut"
class="org.springframework.aop.aspectj.AspectJExpressionPointcut" >
<property name="expression" value="execution(* Performer+.perform(..))" />
</bean>
хвърля следното изключение:
Изключение в нишка "main" org.springframework.beans.factory.BeanCreationException: Грешка при създаване на bean с име "performancePointcut", дефинирано във файл [C:\Users\Prova\Documents\STS\SpringIdol3\src\main\resources\META-INF \spring\spring-idol.xml]: Инстанцирането на bean е неуспешно; вложеното изключение е java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException
ГОТОВО!
Този aspectj-annotation-tutorial свърши работата с стъпки 1, 2 и 3.
Беше забавна петъчна вечер....