Looks like ProvisioningPlan object, which is an instance of a non
Serializable class, has been stored in the HTTP Session. When Tomcat was
shutting down, and it tried to persist the HTTP session, it throws an error
because ProvisioningPlan is non-serializable. The solution is not to put
non-serializable objects into HTTP sessions, which is a bad practice which
is also reported by FindBugs.


On Thu, May 24, 2012 at 11:22 AM, Amila Suriarachchi <[email protected]> wrote:

> hi,
>
> I installed the Esper feature from the p2 repo to CEP and restart the
> server.
>
> Got this exception.
>
> May 24, 2012 11:18:22 AM org.apache.catalina.session.StandardManager doLoad
> SEVERE: IOException while loading persisted sessions:
> java.io.WriteAbortedException: writing aborted;
> java.io.NotSerializableException:
> org.eclipse.equinox.internal.p2.engine.ProvisioningPlan
> java.io.WriteAbortedException: writing aborted;
> java.io.NotSerializableException:
> org.eclipse.equinox.internal.p2.engine.ProvisioningPlan
>     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1333)
>     at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
>     at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
>     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:1595)
>     at
> org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:1060)
>     at
> org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:284)
>     at
> org.apache.catalina.session.StandardManager.load(StandardManager.java:204)
>     at
> org.apache.catalina.session.StandardManager.startInternal(StandardManager.java:491)
>     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>     at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5282)
>     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>     at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
>     at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
>     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>     at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>     at java.lang.Thread.run(Thread.java:619)
> Caused by: java.io.NotSerializableException:
> org.eclipse.equinox.internal.p2.engine.ProvisioningPlan
>     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
> org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1671)
>     at
> org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1077)
>     at
> org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:432)
>     at
> org.apache.catalina.session.StandardManager.unload(StandardManager.java:353)
>     at
> org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:518)
>     at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
>     at
> org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5462)
>     at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
>     at
> org.wso2.carbon.tomcat.ext.internal.CarbonTomcatServiceComponent.deactivate(CarbonTomcatServiceComponent.java:64)
>     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.eclipse.equinox.internal.ds.model.ServiceComponent.deactivate(ServiceComponent.java:379)
>     at
> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.deactivate(ServiceComponentProp.java:161)
>     at
> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.dispose(ServiceComponentProp.java:388)
>     at
> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.dispose(ServiceComponentProp.java:102)
>     at
> org.eclipse.equinox.internal.ds.InstanceProcess.disposeInstances(InstanceProcess.java:343)
>     at
> org.eclipse.equinox.internal.ds.InstanceProcess.disposeInstances(InstanceProcess.java:305)
>     at
> org.eclipse.equinox.internal.ds.Resolver.disposeComponentConfigs(Resolver.java:685)
>     at
> org.eclipse.equinox.internal.ds.Resolver.disableComponents(Resolver.java:661)
>     at
> org.eclipse.equinox.internal.ds.SCRManager.stoppingBundle(SCRManager.java:553)
>     at
> org.eclipse.equinox.internal.ds.SCRManager.bundleChanged(SCRManager.java:232)
>     at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:847)
>     at
> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>     at
> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.publishBundleEventPrivileged(Framework.java:1522)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.publishBundleEvent(Framework.java:1458)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.publishBundleEvent(Framework.java:1453)
>     at
> org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:506)
>     at
> org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:565)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1160)
>     at
> org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:595)
>     at
> org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:257)
>     at
> org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:215)
>     at
> org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:284)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:690)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:597)
>     at
> org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown(EclipseStarter.java:390)
>     at
> org.wso2.carbon.core.init.CarbonServerManager.shutdown(CarbonServerManager.java:822)
>     at
> org.wso2.carbon.core.init.CarbonServerManager.shutdownGracefully(CarbonServerManager.java:855)
>     at
> org.wso2.carbon.core.init.CarbonServerManager$4.run(CarbonServerManager.java:865)
> May 24, 2012 11:18:22 AM org.apache.catalina.session.StandardManager
> startInternal
> SEVERE: Exception loading sessions from persistent storage
> java.io.WriteAbortedException: writing aborted;
> java.io.NotSerializableException:
> org.eclipse.equinox.internal.p2.engine.ProvisioningPlan
>     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1333)
>     at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
>     at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
>     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:1595)
>     at
> org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:1060)
>     at
> org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:284)
>     at
> org.apache.catalina.session.StandardManager.load(StandardManager.java:204)
>     at
> org.apache.catalina.session.StandardManager.startInternal(StandardManager.java:491)
>     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>     at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5282)
>     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>     at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
>     at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
>     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>     at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>     at java.lang.Thread.run(Thread.java:619)
> Caused by: java.io.NotSerializableException:
> org.eclipse.equinox.internal.p2.engine.ProvisioningPlan
>     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
> org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1671)
>     at
> org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1077)
>     at
> org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:432)
>     at
> org.apache.catalina.session.StandardManager.unload(StandardManager.java:353)
>     at
> org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:518)
>     at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
>     at
> org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5462)
>     at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
>     at
> org.wso2.carbon.tomcat.ext.internal.CarbonTomcatServiceComponent.deactivate(CarbonTomcatServiceComponent.java:64)
>     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.eclipse.equinox.internal.ds.model.ServiceComponent.deactivate(ServiceComponent.java:379)
>     at
> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.deactivate(ServiceComponentProp.java:161)
>     at
> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.dispose(ServiceComponentProp.java:388)
>     at
> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.dispose(ServiceComponentProp.java:102)
>     at
> org.eclipse.equinox.internal.ds.InstanceProcess.disposeInstances(InstanceProcess.java:343)
>     at
> org.eclipse.equinox.internal.ds.InstanceProcess.disposeInstances(InstanceProcess.java:305)
>     at
> org.eclipse.equinox.internal.ds.Resolver.disposeComponentConfigs(Resolver.java:685)
>     at
> org.eclipse.equinox.internal.ds.Resolver.disableComponents(Resolver.java:661)
>     at
> org.eclipse.equinox.internal.ds.SCRManager.stoppingBundle(SCRManager.java:553)
>     at
> org.eclipse.equinox.internal.ds.SCRManager.bundleChanged(SCRManager.java:232)
>     at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:847)
>     at
> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>     at
> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.publishBundleEventPrivileged(Framework.java:1522)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.publishBundleEvent(Framework.java:1458)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.publishBundleEvent(Framework.java:1453)
>     at
> org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:506)
>     at
> org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:565)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1160)
>     at
> org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:595)
>     at
> org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:257)
>     at
> org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:215)
>     at
> org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:284)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:690)
>     at
> org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:597)
>     at
> org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown(EclipseStarter.java:390)
>     at
> org.wso2.carbon.core.init.CarbonServerManager.shutdown(CarbonServerManager.java:822)
>     at
> org.wso2.carbon.core.init.CarbonServerManager.shutdownGracefully(CarbonServerManager.java:855)
>     at
> org.wso2.carbon.core.init.CarbonServerManager$4.run(CarbonServerManager.java:865)
>
> thanks,
> Amila.
>
> --
> *Amila Suriarachchi*
>
> Software Architect
> WSO2 Inc. ; http://wso2.com
> lean . enterprise . middleware
>
> phone : +94 71 3082805
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 
*Afkham Azeez*
Director of Architecture; WSO2, Inc.; http://wso2.com
Member; Apache Software Foundation; http://www.apache.org/
* <http://www.apache.org/>**
email: **[email protected]* <[email protected]>* cell: +94 77 3320919
blog: **http://blog.afkham.org* <http://blog.afkham.org>*
twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
*
linked-in: **http://lk.linkedin.com/in/afkhamazeez*
*
*
*Lean . Enterprise . Middleware*
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to