[TC6] makeOutputDir() revision breaks Jasper
Revision 441109 to JspCompilationContext.java results in makeOutputDir() returning false even if the desired outputDir exists. This is because File.mkdirs() returns true "if and only if the directory was created". If the directory already exists, makeOutputDir() is returning false, resulting in an IllegalStateException being thrown. Possible fix that fits in with other recent revisions to JspCompilationContext.java: protected boolean makeOutputDir() { synchronized(outputDirLock) { File outDirFile = new File(outputDir); if (!outDirFile.mkdirs() && !outDirFile.exists()) return false; else return true; } }
Re: [TC6] makeOutputDir() revision breaks Jasper
Or, a better fix: protected boolean makeOutputDir() { synchronized(outputDirLock) { File outDirFile = new File(outputDir); return (outDirFile.exists() || outDirFile.mkdirs()); } } Scott Johnson/Raleigh/[EMAIL PROTECTED] 09/08/2006 01:20 PM Please respond to "Tomcat Developers List" To Tomcat Developers List cc Subject [TC6] makeOutputDir() revision breaks Jasper Revision 441109 to JspCompilationContext.java results in makeOutputDir() returning false even if the desired outputDir exists. This is because File.mkdirs() returns true "if and only if the directory was created". If the directory already exists, makeOutputDir() is returning false, resulting in an IllegalStateException being thrown. Possible fix that fits in with other recent revisions to JspCompilationContext.java: protected boolean makeOutputDir() { synchronized(outputDirLock) { File outDirFile = new File(outputDir); if (!outDirFile.mkdirs() && !outDirFile.exists()) return false; else return true; } }
Re: [TC6] makeOutputDir() revision breaks Jasper
Scott Johnson wrote: Revision 441109 to JspCompilationContext.java results in makeOutputDir() returning false even if the desired outputDir exists. This is because File.mkdirs() returns true "if and only if the directory was created". Indeed, that's correct, thanks. Rémy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]