Aspect im SpringContext

Diskutiere Aspect im SpringContext im Application Tier Forum; Hallo, ich arbeite gerade ein Spring-Tutorial durch und bin im Kapitel Aspect-Programming angekommen und ein erstes @Aspect erstellt package...

  1. jgh
    jgh Neues Mitglied
    Hallo,

    ich arbeite gerade ein Spring-Tutorial durch und bin im Kapitel Aspect-Programming angekommen und ein erstes [c]@Aspect[/c] erstellt
    Code (Java):
    package de.jgh.digitalElektronik.aspect;

    import org.aspectj.lang.annotation.Aspect;
    import org.aspectj.lang.annotation.Before;

    @Aspect
    public class LoggingAspect {
        @Before("execution(public String getName())")
        public void LoggingAdvice() {
            System.out.println("Advice rund. Get Method called");
        }
    }
    alles schön und gut, bisher funktionierte auch alles...erst als in der
    Code (Text):
    spring.xml
    auf die gezeigten Annotationen per [XML]<aop:aspectj-autoproxy />[/XML] auch zuggegriffen wurde, schmeißt er mir den u.g Stacktrace.

    Meine ersten Vermutungen waren das es mit der aopalliance-alpha1.jar zusammenhängt, aber nachdem ich mir eine andere Version (aopalliance.jar) genutzt habe, ist der Fehler geblieben.

    Hier der Consolenausdruck...bei auskommentierten aop-aspectj-Tag in der spring.xml läuft weiterhin alles sauber durch.

    PHP:
    Jan 24, 2012 11:14:13 AM org.springframework.context.support.AbstractApplicationContext prepareRefresh
    Information: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@8ddc4c: startup date [Tue Jan 24 11:14:13 CET 2012]; root of context hierarchy
    Jan 24, 2012 11:14:13 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    Information: Loading XML bean definitions from class path resource [spring.xml]
    Jan 24, 2012 11:14:14 AM org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
    Information: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@183eeb0: defining beans [org.springframework.aop.config.internalAutoProxyCreator,triangle,circle,shapeService,loggingAspect]; root of factory hierarchy
    Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.config.internalAutoProxyCreator': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:997)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:943)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
        at org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:728)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:449)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
        at de.jgh.digitalElektronik.AopMain.main(AopMain.java:10)
    Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice
        at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:162)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:76)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:990)
        ... 12 more
    Caused by: java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator.<init>(AnnotationAwareAspectJAutoProxyCreator.java:52)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
        ... 14 more
    Caused by: java.lang.ClassNotFoundException: org.aopalliance.aop.Advice
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 56 more
     
     
  2. Vielleicht hilft dir das kostenlose Training weiter --> (hier klicken)
  3. maki
    maki Guest
    Welche Springversion nutzt du denn?
    Auf der Webseite sollte man doch alles ind er richtigen Version runterladen können, ein Buildsystem mit Depdency Management macht das automatisch.

    Nutzt du die Spring Doku und die offiziellen Beispiele?
    Wenn nicht, warum?
    Falls doch, dann kannst du die letzte Frage ignorieren ;)
     
  4. jgh
    jgh Neues Mitglied
    ich nutze spring in der version 3.1.0

    und mache gerade hier ein tutorial. Auf dem Link verweist er auf die noch einzubindenden Dependcies.

    Nein, ich nutze die SpringDoku und die offiziellen Bsp leider nicht...keine Ahnung, ist natürlich dumm...aber wenn man irgendwo mal angefangen hat und bis jetzt (Kapitel 27) lief es auf Anhieb Klasse....

    [edit]verursacht denn die aopalliance den Fehler?[/edit]
     
  5. maki
    maki Guest
  6. jgh
    jgh Neues Mitglied
    danke, aber das hilft mir im Moment nicht ;)

    trotzdem werde ich deinen Rat für die Zukunft anwenden.
     
  7. maki
    maki Guest
    Hilft es nciht wenn du Spring 3.10. RELEASE inkl. Abhängigkeiten runterlädst?

    Da sind auf jedenfall die richtigen Verisonen dabei, wenn diese im Classpath liegen und du immer noch deine ClassNotFoundException bekommst, könnte es an etwas anderem liegen, zB. OSGi, verschiedene Classloader (JEE, WebApp), etc. pp.
     
  8. jgh
    jgh Neues Mitglied
    mmh habe ich doch geschrieben, das ich die Version 3.1.0 mir von der offizielen Seite geholt habe.(Spring Downloads | SpringSource.org) okay das RELEASE habe ich hier nicht erwähnt, weil die Version 3.1.0. ja die aktuellste ist...oder meinst du tatsächlich 3.10 ?????

    btw. Problem gefixed... Maven Repository: aopalliance » aopalliance » 1.0 hier gabs die richtige (für mich) Version

    Trotzdem danke, dass du dich meines Problems angenommen hast.
     
  9. Schau dir jetzt hier den Kurs an und lerne Java zu programmieren: --> Hier klicken, um mehr zu erfahren (Klick)
Die Seite wird geladen...

Aspect im SpringContext - Ähnliche Themen

Suche einfaches Beispiel für AspectJ (ohne Spring AOP)
Suche einfaches Beispiel für AspectJ (ohne Spring AOP) im Forum Allgemeine Java-Themen
AspectJ
AspectJ im Forum Java Basics - Anfänger-Themen
Problem mit Maven/aspectweaver.jar
Problem mit Maven/aspectweaver.jar im Forum Application Tier
Klasse String erweitern mit AspectJ
Klasse String erweitern mit AspectJ im Forum Application Tier
LoadTimeWeaving AspectJ
LoadTimeWeaving AspectJ im Forum Application Tier
Thema: Aspect im SpringContext