I did delete all my .class. I can affirm it is not referenced anywhere
in my code anymore.
In fact, i deleted all my application and deployed the new one from the
entire .war.
Here is the stack trace :
2007-08-08 12:04:12 fileStore[/]: java.lang.ClassNotFoundException:
org.medias.amma.sgbd.Jeu
at java.lang.Class.forNameImpl(Native Method)
at java.lang.Class.forName(Class.java:164)
at
org.apache.catalina.util.CustomObjectInputStream.resolveClass(CustomObjectInputStream.java:120)
at
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1553)
at
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1475)
at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1708)
at
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1314)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:354)
at java.util.ArrayList.readObject(ArrayList.java:617)
at sun.reflect.GeneratedMethodAccessor681.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1001)
at
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1828)
at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1728)
at
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1314)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:354)
at
org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1401)
at
org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:895)
at org.apache.catalina.session.FileStore.load(FileStore.java:336)
at
org.apache.catalina.session.StoreBase.processExpires(StoreBase.java:264)
at
org.apache.catalina.session.PersistentManagerBase.backgroundProcess(PersistentManagerBase.java:274)
at
org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4575)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1659)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1668)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1668)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1648)
at java.lang.Thread.run(Thread.java:797)
Along with this exception, i also have a NotSerializableException (this
is why I first removed the class)
2007-08-08 12:04:12 fileStore[/]: java.io.WriteAbortedException: writing
aborted; java.io.NotSerializableException: org.medias.amma.sgbd.Jeu
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1318)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:354)
at java.util.ArrayList.readObject(ArrayList.java:617)
at sun.reflect.GeneratedMethodAccessor681.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1001)
at
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1828)
at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1728)
at
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1314)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:354)
at
org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1401)
at
org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:895)
at org.apache.catalina.session.FileStore.load(FileStore.java:336)
at
org.apache.catalina.session.StoreBase.processExpires(StoreBase.java:264)
at
org.apache.catalina.session.PersistentManagerBase.backgroundProcess(PersistentManagerBase.java:274)
at
org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4575)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1659)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1668)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1668)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1648)
at java.lang.Thread.run(Thread.java:797)
Caused by: java.io.NotSerializableException: org.medias.amma.sgbd.Jeu
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1108)
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:324)
at java.util.ArrayList.writeObject(ArrayList.java:595)
at sun.reflect.GeneratedMethodAccessor367.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:972)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1426)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:324)
at
org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1471)
at
org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:912)
at org.apache.catalina.session.FileStore.save(FileStore.java:412)
at
org.apache.catalina.session.PersistentManagerBase.writeSession(PersistentManagerBase.java:926)
at
org.apache.catalina.session.PersistentManagerBase.swapOut(PersistentManagerBase.java:898)
at
org.apache.catalina.session.PersistentManagerBase.unload(PersistentManagerBase.java:813)
at
org.apache.catalina.session.PersistentManagerBase.stop(PersistentManagerBase.java:1034)
at
org.apache.catalina.core.StandardContext.stop(StandardContext.java:4438)
at
org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:995)
at
org.apache.catalina.core.StandardHostDeployer.remove(StandardHostDeployer.java:607)
at
org.apache.catalina.core.StandardHost.remove(StandardHost.java:955)
at
org.apache.catalina.startup.HostConfig.checkContextLastModified(HostConfig.java:819)
at
org.apache.catalina.startup.HostConfig.check(HostConfig.java:1075)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:372)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:166)
at
org.apache.catalina.core.StandardHost.backgroundProcess(StandardHost.java:843)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1659)
... 3 more
David Delbecq a écrit :
Did you delete all your .class of your application and rebuild them
after removing myclass.java?
It could be another class was referencing that class and was not
recompiled, and as such can not be loaded anymore because reference
another non existing class.
The stacktrace of Exception could be useful too.
En l'instant précis du 08/08/07 13:46, Mastrorillo Laurence s'exprimait
en ces termes:
Hi everybody,
I am having a problem with an old class no longer in used in my
application.
I am using tomcat 5.0.18 with jdk 1.5 from ibm.
I undeployed the application, suppressed the class and every references
to it (I am sure of that!), and then deployed again in tomcat.
And in the catalina.out logs, I get the following error, again and
again :
java.lang.ClassNotFoundException: : myClass
I thought it could be some problem of persisting sessions, so I waited
for all sessions to end, but they don't end because of that error
keeping them alive.
I even restarted tomcat.
Nothing seems to do it.
This does not affect my application as I do not use that class anymore,
but it is affecting sessions and logs.
Thanks if anyone have a clue.
--
---------------------------------------------
Laurence Mastrorillo
Medias-France
CNES - BPi 2102
18, avenue Edouard Belin
31401 Toulouse cedex 9
Tel : 05.61.27.35.09 - Fax : 05.61.28.29.05
--------------------------------------------
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]