remm 2004/04/10 07:56:31 Modified: catalina/src/share/org/apache/catalina/startup HostConfig.java Log: - Bug 28262: Fix redeployment after removal of a war. - Submitted by Peter Rossbach. Revision Changes Path 1.30 +39 -1 jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/startup/HostConfig.java Index: HostConfig.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/startup/HostConfig.java,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- HostConfig.java 27 Feb 2004 14:58:49 -0000 1.29 +++ HostConfig.java 10 Apr 2004 14:56:31 -0000 1.30 @@ -26,6 +26,8 @@ import java.net.URL; import java.util.ArrayList; import java.util.HashMap; +import java.util.Iterator; +import java.util.List; import java.util.jar.JarEntry; import java.util.jar.JarFile; @@ -572,6 +574,7 @@ } istream = null; } + } finally { entry = null; if (jar != null) { try { @@ -1017,11 +1020,46 @@ /** + * Check remove wars, dir and context xml's + */ + protected void checkRemoveApps() { + File appBase = appBase(); + File configBase = configBase(); + List currentDeployed = (List) deployed.clone(); + Iterator iter = currentDeployed.iterator(); + while (iter.hasNext()) { + String filename = (String) iter.next(); + if (filename.toLowerCase().endsWith(".xml")) { + File file = new File(configBase, filename); + if (!file.exists()) { + log.debug(sm.getString("hostConfig.removeXML", filename)); + deployed.remove(filename); + } + continue; + } + File file = new File(appBase, filename); + if (!file.exists()) { + if (log.isDebugEnabled() ) { + if (filename.toLowerCase().endsWith(".war")) + log.debug(sm.getString("hostConfig.removeDIR", + filename)); + else + log.debug(sm.getString("hostConfig.removeWAR", + filename)); + } + deployed.remove(filename); + } + } + } + + + /** * Deploy webapps. */ protected void check() { if (host.getAutoDeploy()) { + checkRemoveApps(); // Deploy apps if the Host allows auto deploying deployApps(); // Check for web.xml modification
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]