Infinispan cache with joda DateTime
gabboflabbo Feb 4, 2015 12:41 PMI've been trying to use Wildfly 8.2.0 + infinispan Cache<> + filestore with a joda date time as the value and am experiencing serialization failures:
standalone-full.xml:
<cache-container name="test-container"> <local-cache name="test"> <file-store passivation="true" purge="true"/> </local-cache> </cache-container>
(i set purge to = true so that I can test this)
TestCache.java:
@Singleton @Startup public class TestCache { @Resource( lookup = "java:jboss/infinispan/cache/test-container/test" ) private Cache<String, DateTime> cache; @PostConstruct public void test() { cache.put( "test", new DateTime() ); System.out.println( "test run" ); } }
jboss-deployment:
<jboss-deployment-structure> <deployment> <dependencies> <module name="org.infinispan" /> <module name="org.infinispan.commons" /> </dependencies> </deployment> </jboss-deployment-structure>
Server boots up fine and the cache entry is put into the cache. When deployment is stopped the following exception occurs when shutting down the cache:
at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:185) at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:869) at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:674) at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:552) at org.infinispan.factories.ComponentRegistry.stop(ComponentRegistry.java:241) at org.infinispan.CacheImpl.stop(CacheImpl.java:697) at org.infinispan.CacheImpl.stop(CacheImpl.java:692) at org.infinispan.AbstractDelegatingCache.stop(AbstractDelegatingCache.java:316) at org.jboss.as.clustering.infinispan.subsystem.CacheService.stop(CacheService.java:96) at org.jboss.as.clustering.msc.AsynchronousService$2.run(AsynchronousService.java:114) [wildfly-clustering-common-8.2.0.Final.jar:8.2.0.Final] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_75] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_75] at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_75] at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads-2.1.1.Final.jar:2.1.1.Final] Caused by: java.lang.NoClassDefFoundError: org/joda/time/LocalTime
at java.lang.Class.getDeclaredMethods0(Native Method) [rt.jar:1.7.0_75] at java.lang.Class.privateGetDeclaredMethods(Class.java:2615) [rt.jar:1.7.0_75] at java.lang.Class.getDeclaredMethods(Class.java:1860) [rt.jar:1.7.0_75] at org.jboss.marshalling.reflect.SerializableClass.<init>(SerializableClass.java:80) [jboss-marshalling-1.4.9.Final.jar:1.4.9.Final] at org.jboss.marshalling.reflect.SerializableClassRegistry.lookup(SerializableClassRegistry.java:90) [jboss-marshalling-1.4.9.Final.jar:1.4.9.Final] at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:177) at org.jboss.marshalling.AbstractObjectOutput.writeObject(AbstractObjectOutput.java:58) [jboss-marshalling-1.4.9.Final.jar:1.4.9.Final] at org.jboss.marshalling.AbstractMarshaller.writeObject(AbstractMarshaller.java:111) [jboss-marshalling-1.4.9.Final.jar:1.4.9.Final] at org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.objectToObjectStream(AbstractJBossMarshaller.java:74) at org.infinispan.marshall.core.VersionAwareMarshaller.objectToBuffer(VersionAwareMarshaller.java:77) at org.infinispan.commons.marshall.AbstractMarshaller.objectToBuffer(AbstractMarshaller.java:41) at org.infinispan.commons.marshall.AbstractDelegatingMarshaller.objectToBuffer(AbstractDelegatingMarshaller.java:85) at org.infinispan.marshall.core.MarshalledEntryImpl.marshall(MarshalledEntryImpl.java:105) at org.infinispan.marshall.core.MarshalledEntryImpl.getValueBytes(MarshalledEntryImpl.java:88) at org.infinispan.persistence.file.SingleFileStore.write(SingleFileStore.java:275) at org.infinispan.persistence.manager.PersistenceManagerImpl.writeToAllStores(PersistenceManagerImpl.java:457) at org.infinispan.eviction.PassivationManagerImpl.passivateAll(PassivationManagerImpl.java:94) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_75] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_75] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_75] at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_75] at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:183) ... 13 more Caused by: java.lang.ClassNotFoundException: org.joda.time.LocalTime from [Module "deployment.test-infinispan2.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.3.Final] at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.3.Final] at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) [jboss-modules.jar:1.3.3.Final] at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.3.Final] at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.3.Final] ... 35 more
Anyone experienced this problem? or know what I'm doing wrong?