0
votes

I have installed openfire in 3 EC2 instance and added hazelcast plugin in all three. All three nodes work fine. But some time i get this exception in stderror log, Please help me to identify why this exception occurs and how can i avoid this error logs? ? ?

Apr 15, 2015 12:16:18 PM com.hazelcast.spi.OperationService
SEVERE: [172.31.22.121]:5701 [openfire] java.lang.ClassNotFoundException: com.jivesoftware.util.cache.ClusteredCacheFactory$CallableTask
com.hazelcast.nio.serialization.HazelcastSerializationException: java.lang.ClassNotFoundException: com.jivesoftware.util.cache.ClusteredCacheFactory$CallableTask
  at com.hazelcast.nio.serialization.DefaultSerializers$ObjectSerializer.read(Defaul tSerializers.java:190)
  at com.hazelcast.nio.serialization.StreamSerializerAdapter.read(StreamSerializerAd apter.java:40)
  at com.hazelcast.nio.serialization.SerializationServiceImpl.readObject(Serializati onServiceImpl.java:276)
  at com.hazelcast.nio.serialization.ByteArrayObjectDataInput.readObject(ByteArrayOb jectDataInput.java:431)
  at com.hazelcast.executor.BaseCallableTaskOperation.readInternal(BaseCallableTaskO peration.java:91)
  at com.hazelcast.spi.Operation.readData(Operation.java:295)
  at com.hazelcast.nio.serialization.DataSerializer.read(DataSerializer.java:105)
  at com.hazelcast.nio.serialization.DataSerializer.read(DataSerializer.java:36)
  at com.hazelcast.nio.serialization.StreamSerializerAdapter.read(StreamSerializerAd apter.java:59)
  at com.hazelcast.nio.serialization.SerializationServiceImpl.toObject(Serialization ServiceImpl.java:218)
  at com.hazelcast.spi.impl.NodeEngineImpl.toObject(NodeEngineImpl.java:156)
  at com.hazelcast.spi.impl.OperationServiceImpl$RemoteOperationProcessor.run(Operat ionServiceImpl.java:724)
  at com.hazelcast.util.executor.ManagedExecutorService$Worker.run(ManagedExecutorSe rvice.java:166)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
  at java.lang.Thread.run(Thread.java:745)
  at com.hazelcast.util.executor.PoolExecutorThreadFactory$ManagedThread.run(PoolExe cutorThreadFactory.java:59)
Caused by: java.lang.ClassNotFoundException: com.jivesoftware.util.cache.ClusteredCacheFactory$CallableTask
  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.loadClass(ClassLoaderUtil.java:83)
  at com.hazelcast.nio.IOUtil$1.resolveClass(IOUtil.java:77)
  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 com.hazelcast.nio.serialization.DefaultSerializers$ObjectSerializer.read(Defaul tSerializers.java:185)
  ... 16 more
1

1 Answers

0
votes

It seems you have to deploy some openfire jar inside your Hazelcast cluster. Hazelcast does not offer remote classloading for security reasons (otherwise everybody could inject everything).