[jboss-jira] [JBoss JIRA] Created: (JBAS-6040) Ensure correct TCCL is set before accessing clustered web session cache
Brian Stansberry (JIRA)
jira-events at lists.jboss.org
Mon Oct 6 08:43:21 EDT 2008
Ensure correct TCCL is set before accessing clustered web session cache
-----------------------------------------------------------------------
Key: JBAS-6040
URL: https://jira.jboss.org/jira/browse/JBAS-6040
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Clustering, Web (Tomcat) service
Affects Versions: JBossAS-5.0.0.CR2
Reporter: Brian Stansberry
Assignee: Brian Stansberry
Fix For: JBossAS-5.0.0.GA
JBoss Web is accessing the session manager very early in the request cycle, before the TCCL is set. This leads to issues like the following. Initial workaround will be to set the TCCL in JBossCacheManager before accessing JBoss Cache.
[JBoss] 10:54:25,457 ERROR [CoyoteAdapter] An exception or error occurred in the container during the request processing
[JBoss] org.jboss.cache.CacheException: java.lang.ClassNotFoundException: org.jboss.web.tomcat.service.session.distributedcache.spi.DistributableSessionTimestamp
[JBoss] at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:227)
[JBoss] at org.jboss.cache.invocation.CacheInvocationDelegate.getData(CacheInvocationDelegate.java:500)
[JBoss] at org.jboss.ha.cachemanager.CacheManagerManagedCache.getData(CacheManagerManagedCache.java:179)
[JBoss] at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.JBossCacheWrapper.getData(JBossCacheWrapper.java:55)
[JBoss] at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.JBossCacheService.loadSession(JBossCacheService.java:331)
[JBoss] at org.jboss.web.tomcat.service.session.JBossCacheManager.loadSession(JBossCacheManager.java:1460)
[JBoss] at org.jboss.web.tomcat.service.session.JBossCacheManager.findSession(JBossCacheManager.java:492)
[JBoss] at org.apache.catalina.connector.Request.isRequestedSessionIdValid(Request.java:2160)
[JBoss] at org.apache.catalina.connector.CoyoteAdapter.parseSessionCookiesId(CoyoteAdapter.java:626)
[JBoss] at org.apache.catalina.connector.CoyoteAdapter.postParseRequest(CoyoteAdapter.java:551)
[JBoss] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:322)
[JBoss] at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
[JBoss] at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
[JBoss] at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
[JBoss] at java.lang.Thread.run(Thread.java:619)
[JBoss] Caused by: java.lang.ClassNotFoundException: org.jboss.web.tomcat.service.session.distributedcache.spi.DistributableSessionTimestamp
[JBoss] at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
[JBoss] at java.security.AccessController.doPrivileged(Native Method)
[JBoss] at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
[JBoss] at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
[JBoss] at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
[JBoss] at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
[JBoss] at java.lang.Class.forName0(Native Method)
[JBoss] at java.lang.Class.forName(Class.java:247)
[JBoss] at org.jboss.util.stream.MarshalledValueInputStream.resolveClass(MarshalledValueInputStream.java:81)
[JBoss] at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
[JBoss] at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
[JBoss] at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
[JBoss] at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
[JBoss] at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
[JBoss] at org.jboss.cache.marshall.CacheMarshaller200.unmarshallObject(CacheMarshaller200.java:549)
[JBoss] at org.jboss.cache.marshall.CacheMarshaller200.populateFromStream(CacheMarshaller200.java:759)
[JBoss] at org.jboss.cache.marshall.CacheMarshaller200.unmarshallHashMap(CacheMarshaller200.java:722)
[JBoss] at org.jboss.cache.marshall.CacheMarshaller200.unmarshallObject(CacheMarshaller200.java:580)
[JBoss] at org.jboss.cache.marshall.CacheMarshaller200.unmarshallObject(CacheMarshaller200.java:522)
[JBoss] at org.jboss.cache.marshall.CacheMarshaller200.objectFromObjectStream(CacheMarshaller200.java:140)
[JBoss] at org.jboss.cache.marshall.VersionAwareMarshaller.objectFromObjectStream(VersionAwareMarshaller.java:326)
[JBoss] at org.jboss.cache.loader.FileCacheLoader.doUnmarshall(FileCacheLoader.java:478)
[JBoss] at org.jboss.cache.loader.AbstractCacheLoader.regionAwareUnmarshall(AbstractCacheLoader.java:216)
[JBoss] at org.jboss.cache.loader.FileCacheLoader.loadAttributes(FileCacheLoader.java:431)
[JBoss] at org.jboss.cache.loader.FileCacheLoader.get(FileCacheLoader.java:201)
[JBoss] at org.jboss.cache.interceptors.CacheLoaderInterceptor.loadData(CacheLoaderInterceptor.java:563)
[JBoss] at org.jboss.cache.interceptors.CacheLoaderInterceptor.loadNode(CacheLoaderInterceptor.java:490)
[JBoss] at org.jboss.cache.interceptors.CacheLoaderInterceptor.loadIfNeeded(CacheLoaderInterceptor.java:304)
[JBoss] at org.jboss.cache.interceptors.CacheLoaderInterceptor.visitGetDataMapCommand(CacheLoaderInterceptor.java:181)
[JBoss] at org.jboss.cache.commands.read.GetDataMapCommand.acceptVisitor(GetDataMapCommand.java:45)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:142)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:157)
[JBoss] at org.jboss.cache.interceptors.base.PostProcessingCommandInterceptor.handleGetDataMapCommand(PostProcessingCommandInterceptor.java:213)
[JBoss] at org.jboss.cache.interceptors.base.PostProcessingCommandInterceptor.visitGetDataMapCommand(PostProcessingCommandInterceptor.java:203)
[JBoss] at org.jboss.cache.commands.read.GetDataMapCommand.acceptVisitor(GetDataMapCommand.java:45)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:142)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:157)
[JBoss] at org.jboss.cache.commands.AbstractVisitor.visitGetDataMapCommand(AbstractVisitor.java:79)
[JBoss] at org.jboss.cache.commands.read.GetDataMapCommand.acceptVisitor(GetDataMapCommand.java:45)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:142)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:157)
[JBoss] at org.jboss.cache.commands.AbstractVisitor.visitGetDataMapCommand(AbstractVisitor.java:79)
[JBoss] at org.jboss.cache.commands.read.GetDataMapCommand.acceptVisitor(GetDataMapCommand.java:45)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:142)
[JBoss] at org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassUpChain(TxInterceptor.java:266)
[JBoss] at org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxInterceptor.java:253)
[JBoss] at org.jboss.cache.commands.AbstractVisitor.visitGetDataMapCommand(AbstractVisitor.java:79)
[JBoss] at org.jboss.cache.commands.read.GetDataMapCommand.acceptVisitor(GetDataMapCommand.java:45)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:142)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:157)
[JBoss] at org.jboss.cache.commands.AbstractVisitor.visitGetDataMapCommand(AbstractVisitor.java:79)
[JBoss] at org.jboss.cache.commands.read.GetDataMapCommand.acceptVisitor(GetDataMapCommand.java:45)
[JBoss] at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:142)
[JBoss] at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:155)
[JBoss] at org.jboss.cache.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:108)
[JBoss] at org.jboss.cache.commands.AbstractVisitor.visitGetDataMapCommand(AbstractVisitor.java:79)
[JBoss] at org.jboss.cache.commands.read.GetDataMapCommand.acceptVisitor(GetDataMapCommand.java:45)
[JBoss] at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:215)
[JBoss] ... 14 more
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list