Mantis - Resin
|
|||||
Viewing Issue Advanced Details | |||||
|
|||||
ID: | Category: | Severity: | Reproducibility: | Date Submitted: | Last Update: |
4254 | minor | always | 10-08-10 17:03 | 10-13-10 12:48 | |
|
|||||
Reporter: | ferg | Platform: | |||
Assigned To: | ferg | OS: | |||
Priority: | urgent | OS Version: | |||
Status: | closed | Product Version: | 4.0.9 | ||
Product Build: | Resolution: | fixed | |||
Projection: | none | ||||
ETA: | none | Fixed in Version: | 4.0.12 | ||
|
|||||
Summary: | 0004254: session/hessian classloader issue 4.0.9 | ||||
Description: |
(rep by Steven Nicholai) I?ve added the following logger to resin.xml <logger name=?com.caucho.hessian.io.SerializerFactory? level=?finer?/> We?re seeing these errors when the browser is left alone for 45+ minutes (much longer than the 30 minute session timeout.) [10-10-06 22:30:56.192] {http://*:8080-9} [^] Hessian/Burlap: 'org.springframework.security.context.SecurityContextImpl' is an unknown class in EnvironmentClassLoader[system:]: java.lang.ClassNotFoundException: org.springframework.security.context.SecurityContextImpl in EnvironmentClassLoader[system:] [10-10-06 22:30:56.203] {http://*:8080-9} [^] java.lang.ClassNotFoundException: org.springframework.security.context.SecurityContextImpl in EnvironmentClassLoader[system:] at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1358) at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1334) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:247) at com.caucho.hessian.io.SerializerFactory.getDeserializer(SerializerFactory.java:666) at com.caucho.hessian.io.SerializerFactory.getObjectDeserializer(SerializerFactory.java:577) at com.caucho.hessian.io.SerializerFactory.getObjectDeserializer(SerializerFactory.java:553) at com.caucho.hessian.io.Hessian2Input.readObjectDefinition(Hessian2Input.java:2154) at com.caucho.hessian.io.Hessian2Input.readObject(Hessian2Input.java:2091) at com.caucho.server.session.HessianSessionDeserializer.readObject(HessianSessionDeserializer.java:71) at com.caucho.server.session.SessionImpl.load(SessionImpl.java:653) at com.caucho.server.session.SessionImpl.load(SessionImpl.java:609) at com.caucho.server.session.SessionManager.createSession(SessionManager.java:1298) at com.caucho.server.http.AbstractCauchoRequest.createSession(AbstractCauchoRequest.java:253) at com.caucho.server.http.AbstractCauchoRequest.getSession(AbstractCauchoRequest.java:196) at com.caucho.server.http.AbstractCauchoRequest.finishRequest(AbstractCauchoRequest.java:589) at com.caucho.server.http.HttpServletRequestImpl.finishRequest(HttpServletRequestImpl.java:1949) at com.caucho.server.http.AbstractHttpRequest.finishRequest(AbstractHttpRequest.java:1749) at com.caucho.server.http.HttpRequest.finishRequest(HttpRequest.java:1254) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:810) at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:662) at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:625) at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:576) at com.caucho.network.listen.TcpSocketLink$AcceptTask.doTask(TcpSocketLink.java:1157) at com.caucho.network.listen.TcpSocketLink$ConnectionReadTask.runThread(TcpSocketLink.java:1092) at com.caucho.network.listen.TcpSocketLink$AcceptTask.run(TcpSocketLink.java:1124) at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:169) at com.caucho.env.thread.ResinThread.run(ResinThread.java:126) It seems that resin is trying to reconstitute the timedout session using the system classloader rather than the webapp classloader, which fails. Any hints for debugging classloader issues in resin? |
||||
Steps To Reproduce: | |||||
Additional Information: | |||||
Relationships | |||||
Attached Files: |
Notes | |||||
|
|||||
|
|