You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@velocity.apache.org by nb...@apache.org on 2007/05/17 06:46:49 UTC
svn commit: r538804 -
/velocity/tools/branches/2.x/src/main/java/org/apache/velocity/tools/view/VelocityView.java
Author: nbubna
Date: Wed May 16 21:46:48 2007
New Revision: 538804
URL: http://svn.apache.org/viewvc?view=rev&rev=538804
Log:
- move loading of deprecated toolbox.xml config to precede default tool config and app-wide tool config (older config goes before even those more broadly defined)
- s/suppress defaults/load defaults
- no longer load default tool config when an old toolbox is in use (this should prevent some problems when using 2.x as a drop-in replacement for an app that was using 1.x)
Modified:
velocity/tools/branches/2.x/src/main/java/org/apache/velocity/tools/view/VelocityView.java
Modified: velocity/tools/branches/2.x/src/main/java/org/apache/velocity/tools/view/VelocityView.java
URL: http://svn.apache.org/viewvc/velocity/tools/branches/2.x/src/main/java/org/apache/velocity/tools/view/VelocityView.java?view=diff&rev=538804&r1=538803&r2=538804
==============================================================================
--- velocity/tools/branches/2.x/src/main/java/org/apache/velocity/tools/view/VelocityView.java (original)
+++ velocity/tools/branches/2.x/src/main/java/org/apache/velocity/tools/view/VelocityView.java Wed May 16 21:46:48 2007
@@ -163,8 +163,8 @@
public static final String USER_PROPERTIES_PATH =
"/WEB-INF/velocity.properties";
- public static final String SUPPRESS_DEFAULTS_KEY =
- "org.apache.velocity.tools.suppressDefaults";
+ public static final String LOAD_DEFAULTS_KEY =
+ "org.apache.velocity.tools.loadDefaults";
private static SimplePool writerPool = new SimplePool(40);
@@ -420,29 +420,50 @@
protected void configure(final ServletConfig config, final ToolboxFactory factory)
{
- // determine whether or not to include default tools
- String suppressDefaults = config.getInitParameter(SUPPRESS_DEFAULTS_KEY);
- if (suppressDefaults == null)
+ FactoryConfiguration factoryConfig = new FactoryConfiguration();
+ String configMessage = "Loading configuration from: ";
+ boolean hasOldToolbox = false;
+
+ if (this.deprecationSupportMode)
{
- suppressDefaults =
- servletContext.getInitParameter(SUPPRESS_DEFAULTS_KEY);
+ // check for deprecated user configuration at the old conventional
+ // location. be silent if missing, log deprecation warning otherwise
+ FactoryConfiguration deprecatedConfig =
+ getConfiguration(DEPRECATED_USER_TOOLS_PATH);
+ if (deprecatedConfig != null)
+ {
+ hasOldToolbox = true;
+ getLog().warn("Please upgrade to new \"/WEB-INF/tools.xml\" format and conventional location."+
+ " Support for \"/WEB-INF/toolbox.xml\" format and conventional file name will "+
+ "be removed in a future version.");
+ getLog().debug(configMessage + DEPRECATED_USER_TOOLS_PATH);
+
+ factoryConfig.addConfiguration(deprecatedConfig);
+ }
}
- FactoryConfiguration factoryConfig;
- if ("true".equalsIgnoreCase(suppressDefaults))
+ // determine whether or not to include default tools
+ String loadDefaults = config.getInitParameter(LOAD_DEFAULTS_KEY);
+ if (loadDefaults == null)
{
- // start out blank
- factoryConfig = new FactoryConfiguration();
- getLog().debug("Default tool configurations have been suppressed.");
+ loadDefaults =
+ servletContext.getInitParameter(LOAD_DEFAULTS_KEY);
}
- else
+
+ // only load the default tools if they have explicitly said to
+ // or if they are not using an old toolbox and have said nothing
+ if ("true".equalsIgnoreCase(loadDefaults) ||
+ (!hasOldToolbox && loadDefaults == null))
{
getLog().trace("Loading default tool configurations...");
- // start out with all available default tools
- factoryConfig = FactoryConfiguration.getDefault();
+ // add all available default tools
+ factoryConfig.addConfiguration(FactoryConfiguration.getDefault());
+ }
+ else if (hasOldToolbox)
+ {
+ // let the user know that the defaults were suppressed
+ getLog().debug("Default tool configurations have been suppressed to avoid conflicts with older application's context or toolbox definition.");
}
-
- String configMessage = "Loading configuration from: ";
// check for application-wide user config in the context init params
String appToolsPath = servletContext.getInitParameter(TOOLS_KEY);
@@ -453,23 +474,6 @@
getLog().debug(configMessage + appToolsPath);
factoryConfig.addConfiguration(appConfig);
- }
-
- if (this.deprecationSupportMode)
- {
- // check for deprecated user configuration at the old conventional
- // location. be silent if missing, log deprecation warning otherwise
- FactoryConfiguration deprecatedConfig =
- getConfiguration(DEPRECATED_USER_TOOLS_PATH);
- if (deprecatedConfig != null)
- {
- getLog().warn("Please upgrade to new \"/WEB-INF/tools.xml\" format and conventional location."+
- " Support for \"/WEB-INF/toolbox.xml\" format and conventional file name will "+
- "be removed in a future version.");
- getLog().debug(configMessage + DEPRECATED_USER_TOOLS_PATH);
-
- factoryConfig.addConfiguration(deprecatedConfig);
- }
}
// check for user configuration at the conventional location,