Re: ignite.events().remoteListen unmarshal0 throw class not found

2018-09-20 Thread vkulichenko
Can you show the full trace? Most likely it's failing on server side because
you don't actually have the class there.

-Val



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


ignite.events().remoteListen unmarshal0 throw class not found

2018-09-20 Thread wangsan
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
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/