Joselito Lobo
2011-08-29 03:41:11 UTC
Hello guys,
I'm running a wicket application with Tomcat 6 and I'm having problems with
Tomcat session persistence across restarts.
More specifically, apparently the session is persisted normally but just 1
minute later,
when the server is trying to deserialize the session persisted, I got the
following exception:
java.lang.ClassNotFoundException:
org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at
org.apache.catalina.util.CustomObjectInputStream.resolveClass(CustomObjectInputStream.java:75)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1574)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at
org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1475)
at
org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:977)
at org.apache.catalina.session.FileStore.load(FileStore.java:296)
at org.apache.catalina.session.StoreBase.processExpires(StoreBase.java:195)
at
org.apache.catalina.session.PersistentManagerBase.processExpires(PersistentManagerBase.java:563)
at
org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:685)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1316)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590)
at java.lang.Thread.run(Thread.java:662)
Here is the configuration of the Tomcat session persistence, I'm using
FileStore.
<Manager className='org.apache.catalina.session.PersistentManager'
saveOnRestart='true'
maxActiveSessions='-1'
minIdleSwap='0'
maxIdleSwap='60'
maxIdleBackup='0'>
<Store className='org.apache.catalina.session.FileStore'
directory='/home/tomcat/persistence' />
</Manager>
The two solutions I have found googling this I cant use:
- Disabling tomcat persistence : I can't because of my deployment
environment, tomcat under loadbalancers (pound)
- Put wicket libs in the shared-libs of Tomcat: it's not a solution
Has anyone dealed with a problem like this?
cheers,
Joselito.
I'm running a wicket application with Tomcat 6 and I'm having problems with
Tomcat session persistence across restarts.
More specifically, apparently the session is persisted normally but just 1
minute later,
when the server is trying to deserialize the session persisted, I got the
following exception:
java.lang.ClassNotFoundException:
org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at
org.apache.catalina.util.CustomObjectInputStream.resolveClass(CustomObjectInputStream.java:75)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1574)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at
org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1475)
at
org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:977)
at org.apache.catalina.session.FileStore.load(FileStore.java:296)
at org.apache.catalina.session.StoreBase.processExpires(StoreBase.java:195)
at
org.apache.catalina.session.PersistentManagerBase.processExpires(PersistentManagerBase.java:563)
at
org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:685)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1316)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590)
at java.lang.Thread.run(Thread.java:662)
Here is the configuration of the Tomcat session persistence, I'm using
FileStore.
<Manager className='org.apache.catalina.session.PersistentManager'
saveOnRestart='true'
maxActiveSessions='-1'
minIdleSwap='0'
maxIdleSwap='60'
maxIdleBackup='0'>
<Store className='org.apache.catalina.session.FileStore'
directory='/home/tomcat/persistence' />
</Manager>
The two solutions I have found googling this I cant use:
- Disabling tomcat persistence : I can't because of my deployment
environment, tomcat under loadbalancers (pound)
- Put wicket libs in the shared-libs of Tomcat: it's not a solution
Has anyone dealed with a problem like this?
cheers,
Joselito.