[
https://issues.jboss.org/browse/AS7-799?page=com.atlassian.jira.plugin.sy...
]
Jason Greene reassigned AS7-799:
--------------------------------
Assignee: Remy Maucherat
Remy can you take a look at this one. Glancing at the code, it looks like the classloader
is properly set on the context, which should be used by the manager.
Wrong Classloader Used When Deserializing Persisted Sessions
------------------------------------------------------------
Key: AS7-799
URL:
https://issues.jboss.org/browse/AS7-799
Project: Application Server 7
Issue Type: Bug
Components: Web
Affects Versions: 7.0.0.Beta3
Reporter: Benjamin Browning
Assignee: Remy Maucherat
The org.jboss.as.web:main module's classloader is being used when deserializing
persisted sessions instead of the deployment's classloader. This leads to errors like
the one below when any classes are referenced in the session that aren't in the
dependency list of org/jboss/as/web/main/module.xml.
21:02:50,824 ERROR [org.apache.catalina.session.ManagerBase] (MSC service thread 1-1)
ClassNotFoundException while loading persisted sessions: java.lang.ClassNotFoundException:
org.jboss.weld.context.conversation.ConversationIdGenerator from [Module
"org.jboss.as.web:main" from local module loader @32b0bad7 (roots:
/Users/bbrowning/src/torquebox/integration-tests/target/integ-dist/jboss/modules)]:
java.lang.ClassNotFoundException:
org.jboss.weld.context.conversation.ConversationIdGenerator from [Module
"org.jboss.as.web:main" from local module loader @32b0bad7 (roots:
/Users/bbrowning/src/torquebox/integration-tests/target/integ-dist/jboss/modules)]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:184)
[:1.0.0.Beta17]
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:357)
[:1.0.0.Beta17]
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:329)
[:1.0.0.Beta17]
at
org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:306)
[:1.0.0.Beta17]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:100)
[:1.0.0.Beta17]
at java.lang.Class.forName0(Native Method) [:1.6.0_24]
at java.lang.Class.forName(Class.java:247) [:1.6.0_24]
at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:603) [:1.6.0_24]
at
org.apache.catalina.util.CustomObjectInputStream.resolveClass(CustomObjectInputStream.java:78)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1574) [:1.6.0_24]
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495) [:1.6.0_24]
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731) [:1.6.0_24]
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328) [:1.6.0_24]
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350) [:1.6.0_24]
at org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1429)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:934)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:395)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at org.apache.catalina.session.StandardManager.load(StandardManager.java:322)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at org.apache.catalina.session.StandardManager.start(StandardManager.java:633)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at org.apache.catalina.core.ContainerBase.setManager(ContainerBase.java:459)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3776)
[jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:61)
[jboss-as-web-7.0.0.Beta3.jar:7.0.0.Beta3]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1675)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[:1.6.0_24]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[:1.6.0_24]
at java.lang.Thread.run(Thread.java:680) [:1.6.0_24]
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira