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

User supplied externalizers are ignored by web/ejb clustering code

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 10.0.0.CR1
    • 10.0.0.Beta1
    • Clustering
    • None

      Several users were surprised to find that their custom Infinispan externalizers are not used when marshalling of objects placed in the web session or used as fields in their SFSB. Without this functionality, users cannot use non-serializable objects in their web session or SFSB.
      There are a few reasons why this does not currently work:

      1. The cache in which user objects is placed does not scan the application classloader for externalizers.
      2. In both the web and ejb case, user objects are stored within a MarshalledValue - the serialization of which is done by JBoss Marshalling directly, not via Infinispan's marshaller.
      3. Neither the org.infinispan.commons (containing org.infinispan.commons.marshall.AdvancedExternalizer) nor org.jboss.marshalling (containing org.jboss.marshalling.Externalizer) modules are exported to the application classpath.

      Clearly, we need a common, public mechanism that bridges these two APIs so that users can register custom externalizers without needing to know the specific marshalling framework to which to adhere.

              pferraro@redhat.com Paul Ferraro
              pferraro@redhat.com Paul Ferraro
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: