Java Mailing List Archive

http://www.junlu.com/

Home » Home (12/2007) » Tomcat Users »

Default persistence/serialization?

Barnet Wagman

2004-05-23

Replies:

Does Tomcat, by default, serialize a session (or anything else)?

I'm getting a NotSerializableException when attempting to perform a
HttpServletRequest.forward() from inside a servlet. The
NotSerializableException refers to a java bean that is called from the
JSP page that is the object of the forward(). The <jsp:useBean ... >
call specifies the bean's scope as "request".

The class in question is not serializable, but it should not be (at
least not as far a my code is concerned). This servlet is working
properly with other JSP pages and other beans that are not
serializable. Of course, I could declare it serializable but it really
shouldn't ever be serialized and I'd like to understand what's going
on. I haven't found anything relevant in the servlet spec.

I'm currently running Tomcat/5.0.19 as a standalone server. For what
it's worth, the error message (from the logfile) is below.*

*I'd appreciate any thoughts on this matter.

Thanks,
bw


------------------------------------------------------------------------
May 23, 2004 2:00:12 PM org.apache.catalina.session.StandardManager start
SEVERE: Exception loading sessions from persistent storage
java.io.WriteAbortedException: writing aborted;
java.io.NotSerializableException: beaststore.SupplierOrder
  at java.io.ObjectInputStream.readObject0 (ObjectInputStream.java:1278)
  at
java.io.ObjectInputStream.defaultReadFields (ObjectInputStream.java:1845)
  at java.io.ObjectInputStream.readSerialData (ObjectInputStream.java:1769)
  at
java.io.ObjectInputStream.readOrdinaryObject (ObjectInputStream.java:1646)
  at java.io.ObjectInputStream.readObject0 (ObjectInputStream.java:1274)
  at java.io.ObjectInputStream.readArray (ObjectInputStream.java:1603)
  at java.io.ObjectInputStream.readObject0 (ObjectInputStream.java:1271)
  at
java.io.ObjectInputStream.defaultReadFields (ObjectInputStream.java:1845)
  at java.io.ObjectInputStream.readSerialData (ObjectInputStream.java:1769)
  at
java.io.ObjectInputStream.readOrdinaryObject (ObjectInputStream.java:1646)
  at java.io.ObjectInputStream.readObject0 (ObjectInputStream.java:1274)
  at java.io.ObjectInputStream.readObject (ObjectInputStream.java:324)
  at
org.apache.catalina.session.StandardSession.readObject (StandardSession.java:1376)
  at
org.apache.catalina.session.StandardSession.readObjectData (StandardSession.java:920)
  at
org.apache.catalina.session.StandardManager.doLoad (StandardManager.java:463)
  at
org.apache.catalina.session.StandardManager.load (StandardManager.java:390)
  at
org.apache.catalina.session.StandardManager.start (StandardManager.java:704)
  at
org.apache.catalina.core.ContainerBase.setManager (ContainerBase.java:542)
  at
org.apache.catalina.startup.ContextConfig.managerConfig (ContextConfig.java:348)
  at
org.apache.catalina.startup.ContextConfig.start (ContextConfig.java:652)
  at
org.apache.catalina.startup.ContextConfig.lifecycleEvent (ContextConfig.java:253)
  at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent (LifecycleSupport.java:166)
  at
org.apache.catalina.core.StandardContext.start (StandardContext.java:4222)
  at
org.apache.catalina.core.ContainerBase.addChildInternal (ContainerBase.java:866)
  at
org.apache.catalina.core.ContainerBase.addChild (ContainerBase.java:850)
  at org.apache.catalina.core.StandardHost.addChild (StandardHost.java:638)
  at
org.apache.catalina.core.StandardHostDeployer.install (StandardHostDeployer.java:320)
  at org.apache.catalina.core.StandardHost.install (StandardHost.java:875)
  at
org.apache.catalina.startup.HostConfig.deployDirectories (HostConfig.java:727)
  at
org.apache.catalina.startup.HostConfig.deployApps (HostConfig.java:477)
  at org.apache.catalina.startup.HostConfig.start (HostConfig.java:1008)
  at
org.apache.catalina.startup.HostConfig.lifecycleEvent (HostConfig.java:394)
  at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent (LifecycleSupport.java:166)
  at org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1134)
  at org.apache.catalina.core.StandardHost.start (StandardHost.java:832)
  at org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1126)
  at
org.apache.catalina.core.StandardEngine.start (StandardEngine.java:521)
  at
org.apache.catalina.core.StandardService.start (StandardService.java:519)
  at
org.apache.catalina.core.StandardServer.start (StandardServer.java:2345)
  at org.apache.catalina.startup.Catalina.start (Catalina.java:594)
  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.apache.catalina.startup.Bootstrap.start (Bootstrap.java:297)
  at org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:398)
Caused by: java.io.NotSerializableException: beaststore.SupplierOrder
  at java.io.ObjectOutputStream.writeObject0 (ObjectOutputStream.java:1054)
  at
java.io.ObjectOutputStream.defaultWriteFields (ObjectOutputStream.java:1332)
  at
java.io.ObjectOutputStream.writeSerialData (ObjectOutputStream.java:1304)
  at
java.io.ObjectOutputStream.writeOrdinaryObject (ObjectOutputStream.java:1247)
  at java.io.ObjectOutputStream.writeObject0 (ObjectOutputStream.java:1052)
  at java.io.ObjectOutputStream.writeArray (ObjectOutputStream.java:1224)
  at java.io.ObjectOutputStream.writeObject0 (ObjectOutputStream.java:1050)
  at
java.io.ObjectOutputStream.defaultWriteFields (ObjectOutputStream.java:1332)
  at
java.io.ObjectOutputStream.writeSerialData (ObjectOutputStream.java:1304)
  at
java.io.ObjectOutputStream.writeOrdinaryObject (ObjectOutputStream.java:1247)
  at java.io.ObjectOutputStream.writeObject0 (ObjectOutputStream.java:1052)
  at java.io.ObjectOutputStream.writeObject (ObjectOutputStream.java:278)
  at
org.apache.catalina.session.StandardSession.writeObject (StandardSession.java:1446)
  at
org.apache.catalina.session.StandardSession.writeObjectData (StandardSession.java:937)
  at
org.apache.catalina.session.StandardManager.doUnload (StandardManager.java:586)
  at
org.apache.catalina.session.StandardManager.unload (StandardManager.java:532)
  at
org.apache.catalina.session.StandardManager.stop (StandardManager.java:734)
  at
org.apache.catalina.core.StandardContext.stop (StandardContext.java:4436)
  at
org.apache.catalina.core.ContainerBase.removeChild (ContainerBase.java:995)
  at
org.apache.catalina.core.StandardHostDeployer.remove (StandardHostDeployer.java:606)
  at org.apache.catalina.core.StandardHost.remove (StandardHost.java:955)
  at
org.apache.catalina.startup.HostConfig.undeployApps (HostConfig.java:1053)
  at org.apache.catalina.startup.HostConfig.stop (HostConfig.java:1030)
  at
org.apache.catalina.startup.HostConfig.lifecycleEvent (HostConfig.java:396)
  at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent (LifecycleSupport.java:166)
  at org.apache.catalina.core.ContainerBase.stop (ContainerBase.java:1166)
  at org.apache.catalina.core.ContainerBase.stop (ContainerBase.java:1178)
  at org.apache.catalina.core.StandardEngine.stop (StandardEngine.java:526)
  at
org.apache.catalina.core.StandardService.stop (StandardService.java:581)
  at
org.apache.catalina.core.StandardServer.stop (StandardServer.java:2379)
  at org.apache.catalina.startup.Catalina.stop (Catalina.java:643)
  at org.apache.catalina.startup.Catalina.start (Catalina.java:618)
  ... 6 more
©2008 junlu.com - Jax Systems, LLC, U.S.A.