You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2003/06/25 00:37:33 UTC

cvs commit: jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core LocalStrings.properties StandardHostDeployer.java

remm        2003/06/24 15:37:33

  Modified:    catalina/src/share/org/apache/catalina/core
                        LocalStrings.properties StandardHostDeployer.java
  Log:
  - Update processing so that unpackWARs is respected even when deploying
    a context file. In that case, the docBase is adjusted to reflect the unpacked WAR.
    Also, using the unpacked docBase in the config file is valid, and will produce the
    same result as pointing to the WAR file.
  - This fixes bug 4829.
  - If a context file is added for an existing context, or if a context file is updated, the
    context will be redeployed (note: a special workaround of some sort will likely be
    needed when the admin webapp commits changes, unless we accept this as
    an acceptable side effect).
  - This lacks testing, but is the final piece of the deployer refactoring (sorry for
    breaking stuff ...).
  
  Revision  Changes    Path
  1.7       +1 -0      jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/LocalStrings.properties
  
  Index: LocalStrings.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/LocalStrings.properties,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- LocalStrings.properties	19 May 2003 21:54:08 -0000	1.6
  +++ LocalStrings.properties	24 Jun 2003 22:37:33 -0000	1.7
  @@ -98,6 +98,7 @@
   standardHost.installBase=Only web applications in the Host web application directory can be installed
   standardHost.installing=Installing web application at context path {0} from URL {1}
   standardHost.installingWAR=Installing web application from URL {0}
  +standardHost.installingXML=Installing web application from Config file URL {0}
   standardHost.installError=Error deploying application at context path {0}
   standardHost.invalidErrorReportValveClass=Couldn't load specified error report valve class: {0}
   standardHost.docBase=Document base directory {0} already exists
  
  
  
  1.13      +20 -1     jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/StandardHostDeployer.java
  
  Index: StandardHostDeployer.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/StandardHostDeployer.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- StandardHostDeployer.java	23 Jun 2003 20:33:27 -0000	1.12
  +++ StandardHostDeployer.java	24 Jun 2003 22:37:33 -0000	1.13
  @@ -160,6 +160,15 @@
   
   
       /**
  +     * The config file which should replace the value set for the config file
  +     * of the <code>Context</code>being added in the <code>addChild()</code> 
  +     * method, or <code>null</code> if the original value should remain 
  +     * untouched.
  +     */
  +    private String overrideConfigFile = null;
  +
  +
  +    /**
        * The string manager for this package.
        */
       protected static StringManager sm =
  @@ -461,6 +470,8 @@
               throw new IllegalArgumentException
                   (sm.getString("standardHost.configNotAllowed"));
   
  +        log.info(sm.getString("standardHost.installingXML", config));
  +
           // Calculate the document base for the new web application (if needed)
           String docBase = null; // Optional override for value in config file
           boolean isWAR = false;
  @@ -489,6 +500,10 @@
   
           // Install the new web application
           this.overrideDocBase = docBase;
  +        if (config.toString().startsWith("file:")) {
  +            this.overrideConfigFile = config.getFile();
  +        }
  +
           InputStream stream = null;
           try {
               stream = config.openStream();
  @@ -512,6 +527,8 @@
                       ;
                   }
               }
  +            this.overrideDocBase = null;
  +            this.overrideConfigFile = null;
           }
   
       }
  @@ -812,6 +829,8 @@
                   (sm.getString("standardHost.pathUsed", contextPath));
           if (this.overrideDocBase != null)
               context.setDocBase(this.overrideDocBase);
  +        if (this.overrideConfigFile != null)
  +            context.setConfigFile(this.overrideConfigFile);
           host.fireContainerEvent(PRE_INSTALL_EVENT, context);
           host.addChild(child);
           host.fireContainerEvent(INSTALL_EVENT, context);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org