1 Reply Latest reply on Jun 5, 2003 4:19 AM by Jon Barnett

    Exception loading sessions

    Shreedhar Newbie

      When JBoss deploys our application, it randomly throws an ArrayStoreException with the message "Exception loading sessions from persistent storage".

      No clue ye. Anybody has ever encountered this problem.

      *** Stack Trace ***

      20:24:24,905 ERROR [Engine] StandardManager[/myapp] Exception loading sessions from persistent storage java.lang.ArrayStoreException
      at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1593)
      at
      java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1261)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:322)
      at
      org.apache.catalina.session.StandardSession.readObject(StandardSession.java:
      1268)
      at
      org.apache.catalina.session.StandardSession.readObjectData(StandardSession.j
      ava:810)
      at
      org.apache.catalina.session.StandardManager.load(StandardManager.java:411)
      at
      org.apache.catalina.session.StandardManager.start(StandardManager.java:617)
      at
      org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1104)
      at
      org.apache.catalina.core.StandardContext.start(StandardContext.java:3371)
      at
      org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:785)
      at
      org.apache.catalina.core.StandardHost.addChild(StandardHost.java:478)
      at
      org.jboss.web.catalina.EmbeddedCatalinaServiceSX.createWebContext(EmbeddedCa
      talinaServiceSX.java:321)
      at
      org.jboss.web.catalina.EmbeddedCatalinaServiceSX.performDeploy(EmbeddedCatal
      inaServiceSX.java:238)
      at
      org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java:300)
      at org.jboss.deployment.MainDeployer.start(MainDeployer.java:678)
      at org.jboss.deployment.MainDeployer.start(MainDeployer.java:671)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:513)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:481)
      at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
      at
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
      .java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at
      org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
      cher.java:284)
      at
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
      at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
      at $Proxy4.deploy(Unknown Source)
      at
      org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanne
      r.java:405)
      at
      org.jboss.deployment.scanner.URLDeploymentScanner.scanDirectory(URLDeploymen
      tScanner.java:586)
      at
      org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.
      java:465)
      at
      org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(Abstract
      DeploymentScanner.java:237)
      at
      org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:162)
      at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
      at
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
      .java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at
      org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
      cher.java:284)
      at
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
      at
      org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.jav
      a:894)
      at $Proxy0.start(Unknown Source)
      at
      org.jboss.system.ServiceController.start(ServiceController.java:340)
      at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
      at
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
      .java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at
      org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
      cher.java:284)
      at
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
      at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
      at $Proxy3.start(Unknown Source)
      at org.jboss.deployment.SARDeployer.start(SARDeployer.java:243)
      at org.jboss.deployment.MainDeployer.start(MainDeployer.java:678)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:513)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:481)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:465)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
      )
      at
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
      .java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at
      org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
      cher.java:284)
      at
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
      at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:314)
      at org.jboss.system.server.ServerImpl.start(ServerImpl.java:216)
      at org.jboss.Main.boot(Main.java:142)
      at org.jboss.Main$1.run(Main.java:375)
      at java.lang.Thread.run(Thread.java:536)
      20:24:28,961 INFO [Engine] ContextConfig[/ums]: Added certificates ->
      request attribute Valve
      20:24:31,685 INFO [EmbeddedCatalinaServiceSX] Using Java2 parent
      classloader delegation: true
      20:24:32,366 INFO [Engine] action: init
      20:24:35,170 INFO [Engine] action: Scanning web.xml for controller servlet
      mapping

        • 1. Re: Exception loading sessions
          Jon Barnett Master

          This is a Tomcat error message related to trying to restore a previous session from persistent storage.

          In order for persistent storage to operate correctly, attributes stored in a session must be Serializable. This is probably where your initial error occurred and now it is unable to recall the attribute - which can happen if Tomcat does not have a copy of the class the object is to be materialised into. Either that or the storage has been corrupted.

          When a context or Tomcat is stopped, active4 sessions will be stored. When a context is restarted or Tomcat itself is restarted, sessions will be reloaded.

          You can get more information from:
          http://jakarta.apache.org/tomcat/tomcat-4.1-doc/config/manager.html. See the special features section for more details specific to your situation as I don't believe you can have activated the persistent storage manager without knowing about it.

          I've seen this in a real Tomcat standalone install but we haven't extensively run an embedded Tomcat instance. The best thing is probably to locate and remove the storage file which will probably be in the temporary work directory in JBoss server/instance/temp probably called sessions.

          Hope that helps.