remm        2003/08/17 01:32:53

  Modified:    catalina/src/share/org/apache/catalina/startup
                        HostConfig.java
  Log:
  - Found a way to avoid the extra restart caused by the web.xml tracker, when
    the webapp was deployed by an outside source, such as the manager
    servlet.
  
  Revision  Changes    Path
  1.22      +15 -6     
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.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- HostConfig.java   4 Aug 2003 19:02:30 -0000       1.21
  +++ HostConfig.java   17 Aug 2003 08:32:53 -0000      1.22
  @@ -771,15 +771,24 @@
                   ResourceAttributes webXmlAttributes = 
                       (ResourceAttributes) 
                       resources.getAttributes("/WEB-INF/web.xml");
  +                ResourceAttributes webInfAttributes = 
  +                    (ResourceAttributes) 
  +                    resources.getAttributes("/WEB-INF");
                   long newLastModified = webXmlAttributes.getLastModified();
  +                long webInfLastModified = webInfAttributes.getLastModified();
                   Long lastModified = (Long) webXmlLastModified.get(contextName);
                   if (lastModified == null) {
                       webXmlLastModified.put
                           (contextName, new Long(newLastModified));
                   } else {
                       if (lastModified.longValue() != newLastModified) {
  -                        webXmlLastModified.remove(contextName);
  -                        restartContext(context);
  +                        if (newLastModified > (webInfLastModified + 5000)) {
  +                            webXmlLastModified.remove(contextName);
  +                            restartContext(context);
  +                        } else {
  +                            webXmlLastModified.put
  +                                (contextName, new Long(newLastModified));
  +                        }
                       }
                   }
               } catch (NamingException e) {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to