Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-1885

JAXB - $JAXBAccessorF_ and $JAXBAccessorM_ cache loosing classes and failing to re-create classes

XMLWordPrintable

    • Icon: Support Patch Support Patch
    • Resolution: Done
    • Icon: Major Major
    • One Off Releases
    • 4.3.0.GA_CP03
    • Web Services
    • None
    • Hide
      PATCH NAME:
              JBPAPP-1885
      PRODUCT NAME:
              JBoss EAP
      VERSION:
              4.3.0.GA_CP03
      SHORT DESCRIPTION:
              The Sun JAXB implementation dynamically generates classes to avoid the need for reflection,
              the implementation uses a WeakHashMap and incorrectly uses a WeakReference that means even
              though the class has been created it is lost and not used.
      LONG DESCRIPTION:
              The upstream bug has been raised here: -
                https://jaxb.dev.java.net/issues/show_bug.cgi?id=564

              When verbose logging of classloading is enabled we see the same $JAXBAccessorF_ and $JAXBAccessorM_
              classes being created multiple times as the WeakReference in the cache keeps getting cleared.

              However as the classes had been defined once before the classloader rejects the subsequent definition
              and the class is not created again, as the original reference is lost and the class can not be re-defined
              this optimisation is not used.
      MANUAL INSTALL INSTRUCTIONS:
              Replace the jaxb-impl.jar in the following two locations: -
                {jboss.home}/client/jaxb-impl.jar
                {jboss.home}/server/{configuration}/deploy/jbossws.sar/jaxb-impl.jar
      COMPATIBILITY:
              None
      DEPENDENCIES:
              JBoss EAP 4.3.0.GA_CP03
      SUPERSEDES:
              None
      SUPERSEDED BY:
              JBoss EAP 4.3.0.GA_CP04
      CREATOR:
              Marcus Moyses
      DATE:
              14th April 2009
      Show
      PATCH NAME:          JBPAPP-1885 PRODUCT NAME:         JBoss EAP VERSION:         4.3.0.GA_CP03 SHORT DESCRIPTION:         The Sun JAXB implementation dynamically generates classes to avoid the need for reflection,         the implementation uses a WeakHashMap and incorrectly uses a WeakReference that means even         though the class has been created it is lost and not used. LONG DESCRIPTION:         The upstream bug has been raised here: -            https://jaxb.dev.java.net/issues/show_bug.cgi?id=564         When verbose logging of classloading is enabled we see the same $JAXBAccessorF_ and $JAXBAccessorM_         classes being created multiple times as the WeakReference in the cache keeps getting cleared.         However as the classes had been defined once before the classloader rejects the subsequent definition         and the class is not created again, as the original reference is lost and the class can not be re-defined         this optimisation is not used. MANUAL INSTALL INSTRUCTIONS:         Replace the jaxb-impl.jar in the following two locations: -           {jboss.home}/client/jaxb-impl.jar           {jboss.home}/server/{configuration}/deploy/jbossws.sar/jaxb-impl.jar COMPATIBILITY:         None DEPENDENCIES:         JBoss EAP 4.3.0.GA_CP03 SUPERSEDES:         None SUPERSEDED BY:         JBoss EAP 4.3.0.GA_CP04 CREATOR:         Marcus Moyses DATE:         14th April 2009

      This issue is related to the generic generation of classes with JAXB - for a further details see JBWS-2317.

              jbn-patch-team JBN Patch Team list
              mmoyses Marcus Moyses (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: