2016-10-06 9 views
0

У меня есть серверы с рабочим именем nodeA и nodeB. Я создаю кластер между этими двумя узлами, используя карусель. Но когда я попытался отсоединение Узла из кластера (за счетом отключения экземпляра), а затем перезапустить его снова, я имею это исключение после Узла воссоединяется кластер:Исключение из потока «HazelcastSessionCleaner»

INFO: [192.168.137.108]:5701 [dev] [3.7] Connecting to /192.168.137.102:5701, timeout: 0, bind-any: true 
Oct 05, 2016 11:04:07 AM com.hazelcast.nio.tcp.TcpIpConnectionManager 
INFO: [192.168.137.108]:5701 [dev] [3.7] Established socket connection between /192.168.137.108:46933 and /192.168.137.102:5701 
Oct 05, 2016 11:04:13 AM com.hazelcast.internal.cluster.ClusterService 
INFO: [192.168.137.108]:5701 [dev] [3.7] 

Members [2] { 
     Member [192.168.137.102]:5701 - 8acfe870-0b47-49ff-9247-00a383f9487b 
     Member [192.168.137.108]:5701 - baced3f3-343c-497f-ab7c-56b0b3923b58 this 
} 

Oct 05, 2016 11:04:15 AM com.hazelcast.core.LifecycleService 
INFO: [192.168.137.108]:5701 [dev] [3.7] [192.168.137.108]:5701 is STARTED 
2016-10-05 11:04:15.472:INFO:oejdp.ScanningAppProvider:main: Deployment monitor at interval 1 
Exception in thread "HazelcastSessionCleaner" com.hazelcast.nio.serialization.HazelcastSerializationException: java.lang.ClassNotFoundException: org.springframework.security.web.savedrequest.DefaultSavedRequest 
     at com.hazelcast.internal.serialization.impl.JavaDefaultSerializers$JavaSerializer.read(JavaDefaultSerializers.java:224) 
     at com.hazelcast.internal.serialization.impl.StreamSerializerAdapter.read(StreamSerializerAdapter.java:46) 
     at com.hazelcast.internal.serialization.impl.AbstractSerializationService.toObject(AbstractSerializationService.java:172) 
     at com.hazelcast.map.impl.query.QueryResultIterator.next(QueryResultIterator.java:59) 
     at com.hazelcast.session.HazelcastSessionIdManager.cleanUp(HazelcastSessionIdManager.java:223) 
     at com.hazelcast.session.HazelcastSessionIdManager$1.run(HazelcastSessionIdManager.java:273) 
     at java.util.TimerThread.mainLoop(Timer.java:555) 
     at java.util.TimerThread.run(Timer.java:505) 
Caused by: java.lang.ClassNotFoundException: org.springframework.security.web.savedrequest.DefaultSavedRequest 
     at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
     at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
     at com.hazelcast.nio.ClassLoaderUtil.tryLoadClass(ClassLoaderUtil.java:151) 
     at com.hazelcast.nio.ClassLoaderUtil.loadClass(ClassLoaderUtil.java:120) 
     at com.hazelcast.nio.IOUtil$ClassLoaderAwareObjectInputStream.resolveClass(IOUtil.java:358) 
     at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1612) 
     at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517) 
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771) 
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350) 
     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370) 
     at java.util.HashMap.readObject(HashMap.java:1180) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:606) 
     at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017) 
     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893) 
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798) 
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350) 
     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990) 
     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915) 
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798) 
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350) 
     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370) 
     at com.hazelcast.internal.serialization.impl.JavaDefaultSerializers$JavaSerializer.read(JavaDefaultSerializers.java:219) 
     ... 7 more 

ответ

0

Существовала проблема сериализации сессии с Hazelcast Jetty плагин. Последняя версия (1.0.2) решила проблему, поэтому вашу проблему можно решить, используя последнюю версию плагина.

+0

Я все еще сталкиваюсь с ошибкой даже с последней версией плагина. –

+0

Развертываете ли вы одно и то же приложение на обоих узлах? Кажется, что класс не может быть найден другим экземпляром Hazelcast. – emre

+0

Оба экземпляра имеют одно и то же приложение. Во время первого запуска оба из них успешно подключены к кластеру без этих исключений. Исключение происходит только в том случае, если я остановился, а затем запустил один экземпляр при подключении к кластеру –