|
|
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Всем привет! Штудирую "Spring 4 для профессионалов, 4-ое издание", и вот все что касается AspectJ - ни один пример не работает. Вот пример последнего некомпилируемого проекта. pom.xml Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. MessageWriter.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. MessageWrapper.aj Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. app-context-xml.xml Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Здесь Idea, в "property name" подсвечивает красным prefix и suffix , и пишет - Cannot resolv property 'prefix'/'suffix' AspectJExample .java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. В либах имеем: org.aspectj:aspectjrt:1.8.9 org.aspectj:aspectjtools:1.8.9 org.aspectj:aspectjweaver:1.8.9 org.springframework:spring-context:4.3.10.RELEASE При запуске получаю: авг 20, 2017 12:56:24 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions INFO: Loading XML bean definitions from class path resource [META-INF/spring/app-context-xml.xml] авг 20, 2017 12:56:25 PM org.springframework.context.support.GenericXmlApplicationContext prepareRefresh INFO: Refreshing org.springframework.context.support.GenericXmlApplicationContext@254989ff: startup date [Sun Aug 20 12:56:25 MSK 2017]; root of context hierarchy авг 20, 2017 12:56:25 PM org.springframework.context.support.GenericXmlApplicationContext refresh WARNING: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.spring.aop.MessageWrapper] for bean with name 'aspect' defined in class path resource [META-INF/spring/app-context-xml.xml]; nested exception is java.lang.ClassNotFoundException: com.spring.aop.MessageWrapper Exception in thread "main" org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.spring.aop.MessageWrapper] for bean with name 'aspect' defined in class path resource [META-INF/spring/app-context-xml.xml]; nested exception is java.lang.ClassNotFoundException: com.spring.aop.MessageWrapper Делаю в IntellijIdea Ultimate 2017.2.2 Ладно несколько раз до этого забил на то что не запускается и решил, что потом к этому вернусь, но тут уже достало. В чем может быть проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2017, 13:03 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2017, 20:15 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Usman, спасибо, ты прав, действительно вот эта строка <aop:aspectj-autoproxy/> была вставлена когда начался перебор вариантов. И соответствующие пути появились выше. Но дело в том, что изначально не было <aop:aspectj-autoproxy/>... И если убрать - результат тот же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2017, 23:46 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Imperous, Кстати, можно задать вопрос авторам книги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 00:23 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Nebo, в данном я склоняюсь к тому что я что-то не так делаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 11:12 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Imperous, Похоже проблема в зависимостях. Погуглите в maven-репозитории какую библиотеку надо подключить с классам com.spring.aop.MessageWrapper. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 16:08 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
mad_nazgulПогуглите в maven-репозитории какую библиотеку надо подключить с классам com.spring.aop.MessageWrapper. Это класс из книги, а не из Spring. Выбор имени пакета, конечно, дебильный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 16:12 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
ImperousNebo, в данном я склоняюсь к тому что я что-то не так делаю Обычно, дело именно в книгах. Примеры лучше брать из актуальных статей, готовых проектов и мануала, а книги использовать только как структурированые знания. Но, судя по ошибке, у вас вообще что-то с настройкой проекта в IDE. Spring же вашего класса не нашел. Может вы в пакеты не так разложили? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 16:15 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
BlazkowiczImperousNebo, в данном я склоняюсь к тому что я что-то не так делаю Обычно, дело именно в книгах. Примеры лучше брать из актуальных статей, готовых проектов и мануала, а книги использовать только как структурированые знания. Но, судя по ошибке, у вас вообще что-то с настройкой проекта в IDE. Spring же вашего класса не нашел. Может вы в пакеты не так разложили? все лежит в одном пакете . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 17:10 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Blazkowiczmad_nazgulПогуглите в maven-репозитории какую библиотеку надо подключить с классам com.spring.aop.MessageWrapper. Это класс из книги, а не из Spring. Выбор имени пакета, конечно, дебильный. да, согласен. но мне для "игрушек" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 17:11 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Imperous, А что в книжке пишут про копиляцию .aj файлов? Она у вас во время сборки планируется или во время загрузки? Если во время сборки, то в мавене ничего не написано про aspectj компиляцию. А если после запуска, то я вообще фиг его знает как Spring вдруг должен догадаться скомпилировать ваш .aj файл. В спринг конфиге об этом тоже ни слова. https://stackoverflow.com/questions/24121117/aspectj-with-spring-aop-configuration-xml Ну, и зачем вы это изучаете не понятно, если сейчас аспекты на Java пишутся. Дался вам этот AspectJ в голом виде? https://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 17:33 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
BlazkowiczImperous, А что в книжке пишут про копиляцию .aj файлов? Она у вас во время сборки планируется или во время загрузки? Если во время сборки, то в мавене ничего не написано про aspectj компиляцию. А если после запуска, то я вообще фиг его знает как Spring вдруг должен догадаться скомпилировать ваш .aj файл. В спринг конфиге об этом тоже ни слова. https://stackoverflow.com/questions/24121117/aspectj-with-spring-aop-configuration-xml Ну, и зачем вы это изучаете не понятно, если сейчас аспекты на Java пишутся. Дался вам этот AspectJ в голом виде? https://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html та я ж только знакомлюсь с джавой и спрингом, еще не знаю что нужно и что нет, материал стараюсь понимать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 00:04 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Imperousта я ж только знакомлюсь с джавой и спрингом, еще не знаю что нужно и что нет, материал стараюсь понимать. Ну, так это. Пропустите аспекты. АОП штука полезная, но для начала проживете без неё. К тому же Spring её реализует прозрачно без надобности работать с AspectJ напрямую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 08:22 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Здесь пишут. https://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html Weaving: linking aspects with other application types or objects to create an advised object. This can be done at compile time (using the AspectJ compiler, for example), load time, or at runtime. Spring AOP, like other pure Java AOP frameworks, performs weaving at runtime. Вариант "плетения" для девочек. https://eclipse.org/aspectj/doc/released/devguide/ltw.html The AspectJ weaver takes class files as input and produces class files as output. The weaving process itself can take place at one of three different times: compile-time, post-compile time, and load-time. The class files produced by the weaving process (and hence the run-time behaviour of an application) are the same regardless of the approach chosen. А тут - для суровых поцонов. А также для сторонников Не-Спринга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 08:42 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
mayton https://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html Weaving: linking aspects with other application types or objects to create an advised object. This can be done at compile time (using the AspectJ compiler, for example), load time, or at runtime. Spring AOP, like other pure Java AOP frameworks, performs weaving at runtime. . У нас какие-то разные мануалы. Во-первых это написано про Spring AOP, который на pure Java без .aj файлов. Там же написано, что можно использовать и AspectJ compiler и евойного агента, если очень хочется. Спринг умеет с этим интегрироваться. Но у автора темы нет ни того, ни другого. maytonА тут - для суровых поцонов. А также для сторонников Не-Спринга. Можно и со Spring голый AspectJ подружить. Вот только зачем топикастеру такой хардкор, если он ещё и Java-то не до конца освоил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 09:05 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Люто и бешено плюсую по поводу примеров из книг. Девять из десяти просто у вас не скомпилируются. А те что соберутся не факт что заработают. Авторы гонят отсебятину и творческие порывы которые никто В редакции не проверял. Очевидно что в книге главное это текст а не код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 09:54 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
maytonЛюто и бешено плюсую по поводу примеров из книг. Девять из десяти просто у вас не скомпилируются. А те что соберутся не факт что заработают. Авторы гонят отсебятину и творческие порывы которые никто В редакции не проверял. Очевидно что в книге главное это текст а не код. Ну в последнее время идет тенденция выкладывать код на github, так что это актуально скорее для книг ранее 2014-2015 годов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 14:05 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
забыл никmaytonЛюто и бешено плюсую по поводу примеров из книг. Девять из десяти просто у вас не скомпилируются. А те что соберутся не факт что заработают. Авторы гонят отсебятину и творческие порывы которые никто В редакции не проверял. Очевидно что в книге главное это текст а не код. Ну в последнее время идет тенденция выкладывать код на github, так что это актуально скорее для книг ранее 2014-2015 годов Это было-бы вообще идеально. А у меня пока ни один пример из Hibernate in Action нелетает. Но это off. Я лучше отдельным топиком напишу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 18:15 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
забыл никmaytonЛюто и бешено плюсую по поводу примеров из книг. Девять из десяти просто у вас не скомпилируются. А те что соберутся не факт что заработают. Авторы гонят отсебятину и творческие порывы которые никто В редакции не проверял. Очевидно что в книге главное это текст а не код. Ну в последнее время идет тенденция выкладывать код на github, так что это актуально скорее для книг ранее 2014-2015 годов гитхаб это конечно быстро и удобно, но я за "набитие руки", мне нравится и лучше усваивается когда я сам пишу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2017, 22:31 |
|
||
|
AspectJ или устаревший материал (Spring AOP)
|
|||
|---|---|---|---|
|
#18+
Может кому полезно будет. Ссылка на книгу Spring 4 для профессионалов, 4-е издание+ файлы примеры Я качал с депозита, на турбобите вроде долхлая ссыла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2017, 14:26 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39509064&tid=2122623]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
164ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 502ms |

| 0 / 0 |
