Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-9488

WeldDeployment initialisation error causes session fail-over to fail.

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 11.0.0.Final
    • Fix Version/s: 12.0.0.Beta1, 12.0.0.Final
    • Component/s: CDI / Weld
    • Labels:
      None
    • Environment:

      Testen on OS X Sierra with Oracle JDK 1.8.0_152

      Description

      At Topicus we've tested one of our Java EE applications to check compatibility with Wildfly session replication. This resulted in deserialization errors when performing a failover test.
      (WELD-001122: Failed to deserialize annotated type identified with AnnotatedTypeIdentifier)
      The application is deployed as an EAR archive containing several modules, one of them a WAR which hosts the main web frontend.
      Point of interest is our application uses Wicket (with Wicket-CDI) to inject CDI resources in Wicket pages.

      After a debugging session we concluded the "tryToLoadUnknownBackedAnnotatedType" method in the Weld class "SlimAnnotatedType" uses the wrong ResourceLoader when trying to load the class containing an injected object.

      Further debugging proved the initialisation in the WeldDeployment method "createAndRegisterAdditionalBeanDeploymentArchive" copies all of the ServiceRegistry entries of the parent BeanDeployment to the child, overwriting the already set ResourceLoader.

      I've attached a patch which prevents the overwriting of the deployment's already set entries. This fixed the replication problems with our application.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                mkouba mkouba
                Reporter:
                klaasjanb Klaasjan Brand
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: