Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.5.2
    • Fix Version/s: 2.5.3
    • Component/s: None
    • Labels:
      None
    • Last commented by a User:
      false

      Description

      From: http://blog.springsource.com/main/2008/01/23/new-improvements-in-domain-object-dependnecy-injection-feature/#comment-100875

      ...when implementing Serializable, we are getting the following messages from the class loader (I am using LTW within the test). I have not tested injection on de-serialisation (which is essential for me) as yet.

      [code]
      ClassLoader@92e78c] error at example\Order.java::0 The type example.Order must implement the inherited abstract method org.springframework.beans.factory.aspectj.AbstractInterfaceDrivenDependencyInjectionAspect$ConfigurableDeserializationSupport.readResolve()
      see also: org\springframework\beans\factory\aspectj\AbstractInterfaceDrivenDependencyInjectionAspect.aj::0
      see also: org\springframework\beans\factory\aspectj\opt\j2ee\domains\springframework.org\build\bamboo-home\xml-data\build-dir\SPR-NIGHTLY\spring\aspectj\src\org\springframework\beans\factory\aspectj\AnnotationBeanConfigurerAspect.aj:87::0
      [AppClassLoader@92e78c] weaveinfo Extending interface set for type 'example.Order' (Order.java) to include 'org.springframework.beans.factory.aspectj.ConfigurableObject' (AnnotationBeanConfigurerAspect.aj)
      [AppClassLoader@92e78c] weaveinfo Join point 'initialization(void org.springframework.beans.factory.aspectj.ConfigurableObject.())' in Type 'example.Order' (Order.java:15) advised by before advice from 'org.springframework.beans.factory.aspectj.AnnotationBeanConfigurerAspect' (AbstractDependencyInjectionAspect.aj:77) [with runtime test]
      [AppClassLoader@92e78c] weaveinfo Join point 'initialization(void org.springframework.beans.factory.aspectj.ConfigurableObject.())' in Type 'example.Order' (Order.java:15) advised by afterReturning advice from 'org.springframework.beans.factory.aspectj.AnnotationBeanConfigurerAspect' (AbstractDependencyInjectionAspect.aj:86) [with runtime test]
      [AppClassLoader@92e78c] weaveinfo Join point 'initialization(void example.Order.())' in Type 'example.Order' (Order.java:15) advised by afterReturning advice from 'org.springframework.beans.factory.aspectj.AnnotationBeanConfigurerAspect' (AbstractDependencyInjectionAspect.aj:86) [with runtime test]

        Activity

        Hide
        Marc Ludwig added a comment -

        Attach simple test case - just the source, no libraries or project settings.

        The dependency is injected, but if the configurable class is marked as Serializable i get the warnings regerading the implementation of read resolve.
        I am using Spring 2.5.2 and all the dependencies are as contained within the Spring with dependencies zip.

        Much appreciated.

        Marc Ludwig

        Show
        Marc Ludwig added a comment - Attach simple test case - just the source, no libraries or project settings. The dependency is injected, but if the configurable class is marked as Serializable i get the warnings regerading the implementation of read resolve. I am using Spring 2.5.2 and all the dependencies are as contained within the Spring with dependencies zip. Much appreciated. Marc Ludwig
        Hide
        Marc Ludwig added a comment -

        Hi
        I'm worried that one of the Jars that I a running against is from a nightly build, and not the production release of 2.5.2.
        I am awaiting download of the production 2.5.2, and will retry my test, and confim one way or the other.
        Apologies for this.
        Marc

        Show
        Marc Ludwig added a comment - Hi I'm worried that one of the Jars that I a running against is from a nightly build, and not the production release of 2.5.2. I am awaiting download of the production 2.5.2, and will retry my test, and confim one way or the other. Apologies for this. Marc
        Hide
        Marc Ludwig added a comment -

        I have retested with the production release of 2.5.2 and still get the error, but with slightly amended text:

        [AppClassLoader@92e78c] error at example\annotation\Order.java::0 The type example.annotation.Order must implement the inherited abstract method org.springframework.beans.factory.aspectj.AbstractInterfaceDrivenDependencyInjectionAspect$ConfigurableDeserializationSupport.readResolve()
        see also: org\springframework\beans\factory\aspectj\AbstractInterfaceDrivenDependencyInjectionAspect.aj::0
        see also: org\springframework\beans\factory\aspectj\D:\projects\spring\spring\aspectj\src\org\springframework\beans\factory\aspectj\AnnotationBeanConfigurerAspect.aj:86::0

        Show
        Marc Ludwig added a comment - I have retested with the production release of 2.5.2 and still get the error, but with slightly amended text: [AppClassLoader@92e78c] error at example\annotation\Order.java::0 The type example.annotation.Order must implement the inherited abstract method org.springframework.beans.factory.aspectj.AbstractInterfaceDrivenDependencyInjectionAspect$ConfigurableDeserializationSupport.readResolve() see also: org\springframework\beans\factory\aspectj\AbstractInterfaceDrivenDependencyInjectionAspect.aj::0 see also: org\springframework\beans\factory\aspectj\D:\projects\spring\spring\aspectj\src\org\springframework\beans\factory\aspectj\AnnotationBeanConfigurerAspect.aj:86::0
        Hide
        Ramnivas Laddad added a comment -

        This seems to be an LTW bug; the code works fine with build-time weaver. Filed a bug with AspectJ (https://bugs.eclipse.org/bugs/show_bug.cgi?id=223094)

        Show
        Ramnivas Laddad added a comment - This seems to be an LTW bug; the code works fine with build-time weaver. Filed a bug with AspectJ ( https://bugs.eclipse.org/bugs/show_bug.cgi?id=223094 )
        Hide
        Ramnivas Laddad added a comment -

        Marc, it looks like there is an easy workaround while a real fix is being made in AspectJ. Add the following file as META-INF/aop.xml (with the META-INF directory on the classpath):

        <?xml version="1.0"?>
        <aspectj>
        <aspects>
        <aspect name="org.springframework.beans.factory.aspectj.AbstractInterfaceDrivenDependencyInjectionAspect"/>
        </aspects>
        </aspectj>

        Show
        Ramnivas Laddad added a comment - Marc, it looks like there is an easy workaround while a real fix is being made in AspectJ. Add the following file as META-INF/aop.xml (with the META-INF directory on the classpath): <?xml version="1.0"?> <aspectj> <aspects> <aspect name="org.springframework.beans.factory.aspectj.AbstractInterfaceDrivenDependencyInjectionAspect"/> </aspects> </aspectj>
        Hide
        Marc Ludwig added a comment -

        Excellent,
        Thanks for raising the Bug for the underlying fault, and also providing the workaround, which works!
        Thankyou
        Marc

        Show
        Marc Ludwig added a comment - Excellent, Thanks for raising the Bug for the underlying fault, and also providing the workaround, which works! Thankyou Marc
        Hide
        Ramnivas Laddad added a comment -

        AspectJ version updated to aspectj-DEVELOPMENT-20080321160506. Resolution verified to work without the workaround.

        Show
        Ramnivas Laddad added a comment - AspectJ version updated to aspectj-DEVELOPMENT-20080321160506. Resolution verified to work without the workaround.
        Hide
        louisjiang added a comment -

        I still have this problem

        Show
        louisjiang added a comment - I still have this problem
        Hide
        Chris Beams added a comment -

        Hi Louis,

        Given that this issue was resolved against Spring 2.5.3, which was quite some time ago, it's best if you open a new issue and explain precisely what's happening, ideally providing a reproduction project. Thanks.

        Show
        Chris Beams added a comment - Hi Louis, Given that this issue was resolved against Spring 2.5.3, which was quite some time ago, it's best if you open a new issue and explain precisely what's happening, ideally providing a reproduction project . Thanks.

          People

          • Assignee:
            Chris Beams
            Reporter:
            Ramnivas Laddad
            Last updater:
            Trevor Marshall
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:
              Days since last comment:
              1 year, 49 weeks, 1 day ago