DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8275>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8275 ContextConfig.start() attempts to create a $CATALINA_BASE/temp/ directory Summary: ContextConfig.start() attempts to create a $CATALINA_BASE/temp/ directory Product: Tomcat 4 Version: Nightly Build Platform: Other OS/Version: Other Status: NEW Severity: Major Priority: Other Component: Catalina AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] The snapshot is from 2002-04-15. While reading JAR files, Catalina's ContextConfig.start() method calls the tldScan() method, which is attempting to create files within a temporary directory at $CATALINA_BASE/temp/ (a directory which AFAIK does not exist by default). In a secure configuration, the unix user which Catalina runs at has no permission to write directly to $CATALINA_BASE directory, and thus cannot create the temporary directory. This hoses the web application bound to that context. IMHO, Catalina shouldn't reference tag library descriptors -- I was under the impression that those were JSP-specific, in which case wouldn't they be the domain of Jasper? Perhaps the Servlet spec. makes this impossible... I'm also a bit curious as to where the directory name "temp" is coming from. I took my last snapshot on 2002-01-24, and didn't see any reference to it while looking through the delta. Here's the associated stack trace from Catalina's log file: 2002-04-18 12:47:14 ContextConfig[/scarab] Exception processing JAR at resource path /WEB-INF/lib/commons-fileupload-0.1-dev.jar javax.servlet.ServletException: Exception processing JAR at resource path /WEB-INF/lib/commons-fileupload-0.1-dev.jar at org.apache.catalina.startup.ContextConfig.tldScanJar(ContextConfig.java, Compiled Code) at org.apache.catalina.startup.ContextConfig.tldScan(ContextConfig.java, Compiled Code) at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java, Compiled Code) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java, Compiled Code) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java, Compiled Code) at org.apache.catalina.core.StandardContext.start(StandardContext.java, Compiled Code) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java, Compiled Code) at org.apache.catalina.core.StandardHost.start(StandardHost.java, Compiled Code) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java, Compiled Code) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java, Compiled Code) at org.apache.catalina.core.StandardService.start(StandardService.java, Compiled Code) at org.apache.catalina.core.StandardServer.start(StandardServer.java, Compiled Code) at org.apache.catalina.startup.Catalina.start(Catalina.java, Compiled Code) at org.apache.catalina.startup.Catalina.execute(Catalina.java, Compiled Code) at org.apache.catalina.startup.Catalina.process(Catalina.java, Compiled Code) at java.lang.reflect.Method.invoke(Native Method) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java, Compiled Code) ----- Root Cause ----- java.io.IOException: No such file or directory at java.io.UnixFileSystem.createFileExclusively(Native Method) at java.io.File.checkAndCreate(File.java, Compiled Code) at java.io.File.createTempFile(File.java, Compiled Code) at java.io.File.createTempFile(File.java, Compiled Code) at sun.net.www.protocol.jar.URLJarFile$1.run(URLJarFile.java, Compiled Code) at java.security.AccessController.doPrivileged(Native Method) at sun.net.www.protocol.jar.URLJarFile.retrieve(URLJarFile.java, Compiled Code) at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java, Compiled Code) at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java, Compiled Code) at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java, Compiled Code) at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java, Compiled Code) at org.apache.catalina.startup.ContextConfig.tldScanJar(ContextConfig.java, Compiled Code) at org.apache.catalina.startup.ContextConfig.tldScan(ContextConfig.java, Compiled Code) at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java, Compiled Code) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java, Compiled Code) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java, Compiled Code) at org.apache.catalina.core.StandardContext.start(StandardContext.java, Compiled Code) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java, Compiled Code) at org.apache.catalina.core.StandardHost.start(StandardHost.java, Compiled Code) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java, Compiled Code) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java, Compiled Code) at org.apache.catalina.core.StandardService.start(StandardService.java, Compiled Code) at org.apache.catalina.core.StandardServer.start(StandardServer.java, Compiled Code) at org.apache.catalina.startup.Catalina.start(Catalina.java, Compiled Code) at org.apache.catalina.startup.Catalina.execute(Catalina.java, Compiled Code) at org.apache.catalina.startup.Catalina.process(Catalina.java, Compiled Code) at java.lang.reflect.Method.invoke(Native Method) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java, Compiled Code) -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>