Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-5444

Filter/converters in server can't unmarshall custom cached classes

XMLWordPrintable

    • Workaround Exists
    • Hide

      Manually put them the custom classes in a module and get org.infinispan.commons module to depend on this module. It requires restarting the server.

      Show
      Manually put them the custom classes in a module and get org.infinispan.commons module to depend on this module. It requires restarting the server.

      If a user deploys a filter/converter into server, and the cache contains custom classes, the default behaviour of unmarshalling custom classes for the filter/converter will generate CNFEs, e.g.

      Caused by: java.lang.ClassNotFoundException: ValueAddedEvent from [Module
      "org.infinispan.commons:main" from local module loader @4b7504fb
      (finder: local module finder @6f9a2170 (roots:
      /opt/infinispan/modules,/opt/infinispan/modules/system/layers/base))]
      [..]
         at
      org.infinispan.commons.marshall.AbstractMarshaller.objectFromByteBuffer(AbstractMarshaller.java:82)
      [infinispan-commons-7.2.0-SNAPSHOT.jar:7.2.0-SNAPSHOT]
         at
      org.infinispan.server.hotrod.ClientListenerRegistry$UnmarshallConverter.convert(ClientListenerRegistry.scala:383)
      [infinispan-server-hotrod-7.2.0-SNAPSHOT.jar:7.2.0-SNAPSHOT]
      

      Even if the classes are deployed along with the filter/converter, these won't be found. Currently, the only way to workaround it is to add those classes into a module and get the infinispan-commons module to depend on it to locate them.

      A better solution is needed here...

              rh-ee-galder Galder ZamarreƱo
              rh-ee-galder Galder ZamarreƱo
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: