when I start tomcat6,sometimes tomcat6 start successfully and don't raise any error,sometimes tomcat6 start successfully too,but it raise errors,I heard tomcat6 add some new feature which it will restore session when tomcat6 start,I read from erorr infomation,tomcat has halt session restore,saveOnRestart="false",but I don't know why tomcat still restore session when tomcat6 start!!! My all class have implements Serializable,why still raise erorr? This question have puzzled me for a lot of days!!! Anyone could help me out of this question?
Thanks tomcat6\conf\context.xml is follows: <!-- The contents of this file will be loaded for each web application --> <Context> <Resource name="jdbc/Test" type="javax.sql.DataSource" auth="Container" driverClassName="oracle.jdbc.OracleDriver" maxActive="100" maxIdle="20" maxWait="10000" url="jdbc:oracle:thin:@localhost:1521:TEST" username="scott" password="tiger" /> <!-- Default set of monitored resources --> <WatchedResource>WEB-INF/web.xml</WatchedResource> <!-- Uncomment this to disable session persistence across Tomcat restarts --> <!-- <Manager pathname="" /> --> </Context> when tomcat6 raise error,sometimes,tomcat will raise following errors: <Context path="..." reloadable="..." docBase="..." workDir="..."> <Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false"/></Context> 2006-12-25 21:38:55 org.apache.catalina.core.AprLifecycleListenerlifecycleEvent info: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Java\jdk1.6.0\bin 2006-12-25 21:38:55 org.apache.coyote.http11.Http11Protocol init info: Initializing Coyote HTTP/1.1 on http-8080 2006-12-25 21:38:55 org.apache.catalina.startup.Catalina load info: Initialization processed in 765 ms 2006-12-25 21:38:56 org.apache.catalina.core.StandardService start info: Starting service Catalina 2006-12-25 21:38:56 org.apache.catalina.core.StandardEngine start info: Starting Servlet Engine: Apache Tomcat/6.0.2 2006-12-25 21:38:56 org.apache.catalina.core.StandardHost start info: XML validation disabled 2006-12-25 21:38:57 org.apache.catalina.session.StandardManager doLoad Fatal: IOException while loading persisted sessions: java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: org.apache.catalina.connector.RequestFacade java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: org.apache.catalina.connector.RequestFacade at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1333) at java.io.ObjectInputStream.defaultReadFields( ObjectInputStream.java:1945) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java :1869) at java.io.ObjectInputStream.readOrdinaryObject( ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at java.util.ArrayList.readObject(ArrayList.java:593) 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:597) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java :974) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java :1846) at java.io.ObjectInputStream.readOrdinaryObject( ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1329) at java.io.ObjectInputStream.defaultReadFields( ObjectInputStream.java:1945) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java :1869) at java.io.ObjectInputStream.readOrdinaryObject( ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at org.apache.catalina.session.StandardSession.readObject( StandardSession.java:1440) at org.apache.catalina.session.StandardSession.readObjectData( StandardSession.java:943) at org.apache.catalina.session.StandardManager.doLoad( StandardManager.java:394) at org.apache.catalina.session.StandardManager.load( StandardManager.java:321) at org.apache.catalina.session.StandardManager.start( StandardManager.java:637) at org.apache.catalina.core.ContainerBase.setManager( ContainerBase.java:432) at org.apache.catalina.core.StandardContext.start( StandardContext.java:4257) at org.apache.catalina.core.ContainerBase.addChildInternal( ContainerBase.java:760) at org.apache.catalina.core.ContainerBase.addChild( ContainerBase.java:740) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java :525) at org.apache.catalina.startup.HostConfig.deployDirectory( HostConfig.java:920) at org.apache.catalina.startup.HostConfig.deployDirectories( HostConfig.java:883) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java :492) at org.apache.catalina.startup.HostConfig.start(HostConfig.java :1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent( HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent( LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1022) at org.apache.catalina.core.StandardHost.start(StandardHost.java :719) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1014) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java :443) at org.apache.catalina.core.StandardService.start( StandardService.java:451) at org.apache.catalina.core.StandardServer.start(StandardServer.java :710) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) 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:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: java.io.NotSerializableException: org.apache.catalina.connector.RequestFacade at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1156) at java.io.ObjectOutputStream.defaultWriteFields( ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeSerialData( ObjectOutputStream.java:1474) at java.io.ObjectOutputStream.writeOrdinaryObject( ObjectOutputStream.java:1392) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1150) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java :326) at java.util.ArrayList.writeObject(ArrayList.java:570) 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:597) at java.io.ObjectStreamClass.invokeWriteObject( ObjectStreamClass.java:945) at java.io.ObjectOutputStream.writeSerialData( ObjectOutputStream.java:1461) at java.io.ObjectOutputStream.writeOrdinaryObject( ObjectOutputStream.java:1392) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1150) at java.io.ObjectOutputStream.defaultWriteFields( ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeSerialData( ObjectOutputStream.java:1474) at java.io.ObjectOutputStream.writeOrdinaryObject( ObjectOutputStream.java:1392) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1150) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java :326) at org.apache.catalina.session.StandardSession.writeObject( StandardSession.java:1516) at org.apache.catalina.session.StandardSession.writeObjectData( StandardSession.java:960) at org.apache.catalina.session.StandardManager.doUnload( StandardManager.java:517) at org.apache.catalina.session.StandardManager.unload( StandardManager.java:463) at org.apache.catalina.session.StandardManager.stop( StandardManager.java:667) at org.apache.catalina.core.StandardContext.stop( StandardContext.java:4498) at org.apache.catalina.core.ContainerBase.removeChild( ContainerBase.java:893) at org.apache.catalina.startup.HostConfig.undeployApps( HostConfig.java:1180) at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1151) at org.apache.catalina.startup.HostConfig.lifecycleEvent( HostConfig.java:313) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent( LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java :1055) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java :1067) at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java :448) at org.apache.catalina.core.StandardService.stop( StandardService.java:513) at org.apache.catalina.core.StandardServer.stop(StandardServer.java :744) at org.apache.catalina.startup.Catalina.stop(Catalina.java:602) at org.apache.catalina.startup.Catalina.start(Catalina.java:577) ... 6 more 2006-12-25 21:38:57 org.apache.catalina.session.StandardManager start Fatal: Exception loading sessions from persistent storage java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: org.apache.catalina.connector.RequestFacade at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1333) at java.io.ObjectInputStream.defaultReadFields( ObjectInputStream.java:1945) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java :1869) at java.io.ObjectInputStream.readOrdinaryObject( ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at java.util.ArrayList.readObject(ArrayList.java:593) 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:597) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java :974) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java :1846) at java.io.ObjectInputStream.readOrdinaryObject( ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1329) at java.io.ObjectInputStream.defaultReadFields( ObjectInputStream.java:1945) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java :1869) at java.io.ObjectInputStream.readOrdinaryObject( ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java :1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at org.apache.catalina.session.StandardSession.readObject( StandardSession.java:1440) at org.apache.catalina.session.StandardSession.readObjectData( StandardSession.java:943) at org.apache.catalina.session.StandardManager.doLoad( StandardManager.java:394) at org.apache.catalina.session.StandardManager.load( StandardManager.java:321) at org.apache.catalina.session.StandardManager.start( StandardManager.java:637) at org.apache.catalina.core.ContainerBase.setManager( ContainerBase.java:432) at org.apache.catalina.core.StandardContext.start( StandardContext.java:4257) at org.apache.catalina.core.ContainerBase.addChildInternal( ContainerBase.java:760) at org.apache.catalina.core.ContainerBase.addChild( ContainerBase.java:740) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java :525) at org.apache.catalina.startup.HostConfig.deployDirectory( HostConfig.java:920) at org.apache.catalina.startup.HostConfig.deployDirectories( HostConfig.java:883) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java :492) at org.apache.catalina.startup.HostConfig.start(HostConfig.java :1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent( HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent( LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1022) at org.apache.catalina.core.StandardHost.start(StandardHost.java :719) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1014) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java :443) at org.apache.catalina.core.StandardService.start( StandardService.java:451) at org.apache.catalina.core.StandardServer.start(StandardServer.java :710) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) 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:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: java.io.NotSerializableException: org.apache.catalina.connector.RequestFacade at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1156) at java.io.ObjectOutputStream.defaultWriteFields( ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeSerialData( ObjectOutputStream.java:1474) at java.io.ObjectOutputStream.writeOrdinaryObject( ObjectOutputStream.java:1392) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1150) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java :326) at java.util.ArrayList.writeObject(ArrayList.java:570) 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:597) at java.io.ObjectStreamClass.invokeWriteObject( ObjectStreamClass.java:945) at java.io.ObjectOutputStream.writeSerialData( ObjectOutputStream.java:1461) at java.io.ObjectOutputStream.writeOrdinaryObject( ObjectOutputStream.java:1392) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1150) at java.io.ObjectOutputStream.defaultWriteFields( ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeSerialData( ObjectOutputStream.java:1474) at java.io.ObjectOutputStream.writeOrdinaryObject( ObjectOutputStream.java:1392) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java :1150) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java :326) at org.apache.catalina.session.StandardSession.writeObject( StandardSession.java:1516) at org.apache.catalina.session.StandardSession.writeObjectData( StandardSession.java:960) at org.apache.catalina.session.StandardManager.doUnload( StandardManager.java:517) at org.apache.catalina.session.StandardManager.unload( StandardManager.java:463) at org.apache.catalina.session.StandardManager.stop( StandardManager.java:667) at org.apache.catalina.core.StandardContext.stop( StandardContext.java:4498) at org.apache.catalina.core.ContainerBase.removeChild( ContainerBase.java:893) at org.apache.catalina.startup.HostConfig.undeployApps( HostConfig.java:1180) at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1151) at org.apache.catalina.startup.HostConfig.lifecycleEvent( HostConfig.java:313) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent( LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java :1055) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java :1067) at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java :448) at org.apache.catalina.core.StandardService.stop( StandardService.java:513) at org.apache.catalina.core.StandardServer.stop(StandardServer.java :744) at org.apache.catalina.startup.Catalina.stop(Catalina.java:602) at org.apache.catalina.startup.Catalina.start(Catalina.java:577) ... 6 more log4j:WARN No appenders could be found for logger ( org.springframework.web.context.ContextLoader). log4j:WARN Please initialize the log4j system properly. 2006-12-25 21:39:00 org.apache.coyote.http11.Http11Protocol start info: Starting Coyote HTTP/1.1 on http-8080 2006-12-25 21:39:01 org.apache.jk.common.ChannelSocket init info: JK: ajp13 listening on /0.0.0.0:8009 2006-12-25 21:39:01 org.apache.jk.server.JkMain start info: Jk running ID=0 time=0/94 config=null 2006-12-25 21:39:01 org.apache.catalina.startup.Catalina start info: Server startup in 5141 ms