A server and a client, then client call:
   line_1:     CacheNodeFilter rmtFilter = new CacheNodeFilter(serviceType,
uuid);
   line_2:     ignite.events().remoteListen(listenerDispatcher, rmtFilter,
EventType.EVT_CACHE_OBJECT_EXPIRED);

I am quite sure all the  server and client have the class CacheNodeFilter
with same version.
And CacheNodeFilter implements IgnitePredicate<CacheEvent>
But in client it will throw:
        catch (ClassNotFoundException e) {
            throw new IgniteCheckedException("Failed to find class with
given class loader for unmarshalling " +
                "(make sure same versions of all classes are available on
all nodes or enable peer-class-loading) " +
                "[clsLdr=" + clsLdr + ", cls=" + e.getMessage() + "]", e);
        }

It is weird that exception throw on line_2 but not line_1.If line_1 run
successful,the class "CacheNodeFilter" must be loaded by classloader, So why
line_2 still throw ClassNotFoundException?

And the classloader is  appclassloader.






--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to