You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2005/11/14 18:40:22 UTC
DO NOT REPLY [Bug 37498] New: -
NPE in org.apache.catalina.core.ContainerBase.removeChild
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=37498>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=37498
Summary: NPE in
org.apache.catalina.core.ContainerBase.removeChild
Product: Tomcat 5
Version: 5.5.12
Platform: Other
OS/Version: other
Status: NEW
Severity: normal
Priority: P2
Component: Catalina
AssignedTo: tomcat-dev@jakarta.apache.org
ReportedBy: darryl@darrylmiles.org
I moved the directory containing my web-app from the webapps / deployment area,
I renamed it outside of the webapps/ tree. I was expecting it to viciously
undeploy the application so I could then rename it back to cause a deploy.
The application is setup with a context "" for the default context.
The deployed folder name is "../webapps/ROOT"
I think this is reproducable.
At the time I moved the web-app folder I got multiple Exceptions, like the
following:
14-Nov-2005 16:56:56 org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context []
DEBUG 16:56:56,039 (ApplicationLifecycleListener.java:contextDestroyed:70)
-contextDestroyed on "mywebapp"
14-Nov-2005 16:56:56 org.apache.catalina.loader.WebappClassLoader openJARs
WARNING: Failed to open JAR
java.util.zip.ZipException: No such file or directory
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:203)
at java.util.jar.JarFile.<init>(JarFile.java:132)
at java.util.jar.JarFile.<init>(JarFile.java:97)
at
org.apache.catalina.loader.WebappClassLoader.openJARs(WebappClassLoader.java:1561)
at
org.apache.catalina.loader.WebappClassLoader.findResourceInternal(WebappClassLoader.java:1792)
at
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1587)
at
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:856)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1305)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1187)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at
com.imin1way.project.task.ApplicationLifecycleListener.contextDestroyed(ApplicationLifecycleListener.java:72)
at
org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:3733)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4306)
at
org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:892)
at
org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1019)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1178)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:292)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1304)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1568)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1577)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1557)
at java.lang.Thread.run(Thread.java:595)
I guess it was trying to open JAR files to load classes from the WEB-INF/lib to
execute the ContextListener.destroyContext() and any unloaded classes is needed
to run.
However the background task is now stuck doing this every 10 seconds:
14-Nov-2005 16:58:36 org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context []
14-Nov-2005 16:58:36
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor processChildren
SEVERE: Exception invoking periodic operation:
java.lang.NullPointerException
at
org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:883)
at
org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1019)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1178)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:292)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1304)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1568)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1577)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1557)
at java.lang.Thread.run(Thread.java:595)
I would expect Tomcat to be able to reliabily recover from this sort of abuse :)
Do bad things happen in TC when an exception is throw from the destroyContext() ?
Let me know if you need more info or maybe even a test case if the cause /
solution isn't clear enough.
--
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org