Author: markt Date: Tue Jan 14 09:35:25 2014 New Revision: 1557994 URL: http://svn.apache.org/r1557994 Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=55671 s/genStrAsCharArray/genStringAsCharArray/ and retain support for genStrAsCharArray as an init parameter
Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/conf/web.xml tomcat/tc6.0.x/trunk/java/org/apache/jasper/EmbeddedServletOptions.java tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings.properties tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_es.properties tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml tomcat/tc6.0.x/trunk/webapps/docs/jasper-howto.xml Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Jan 14 09:35:25 2014 @@ -53,19 +53,6 @@ PATCHES PROPOSED TO BACKPORT: requires Ant >= 1.8.0). -1: -* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=55671 - Consistent naming for genStringAsCharArray - https://issues.apache.org/bugzilla/attachment.cgi?id=31187 - +1: markt, remm, mturk - -0: kkolinko: I think "genStrAsCharArray" is the proper and - documented name for Tomcat 6. If we change the init-param name - for better compatibility with Tomcat 7 (a good thing, +1), - the code should check both the new and the old param names. - It also needs r1556725. - https://issues.apache.org/bugzilla/show_bug.cgi?id=55671#c1 - markt: patch updated - -1: - * Add an option to the Context to control the blocking of XML external entities when parsing XML configuration files and enable this blocking by default when a security manager is used. The block is implemented via a custom resolver to Modified: tomcat/tc6.0.x/trunk/conf/web.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/conf/web.xml?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/conf/web.xml (original) +++ tomcat/tc6.0.x/trunk/conf/web.xml Tue Jan 14 09:35:25 2014 @@ -196,7 +196,8 @@ <!-- a separate JVM is used for JSP page compiles --> <!-- from the one Tomcat is running in. [true] --> <!-- --> - <!-- genStrAsCharArray Should text strings be generated as char --> + <!-- genStringAsCharArray --> + <!-- Should text strings be generated as char --> <!-- arrays, to improve performance in some cases? --> <!-- [false] --> <!-- --> Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/EmbeddedServletOptions.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jasper/EmbeddedServletOptions.java?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/jasper/EmbeddedServletOptions.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/jasper/EmbeddedServletOptions.java Tue Jan 14 09:35:25 2014 @@ -5,9 +5,9 @@ * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -27,199 +27,198 @@ import org.apache.jasper.compiler.TldLoc import org.apache.jasper.compiler.JspConfig; import org.apache.jasper.compiler.TagPluginManager; import org.apache.jasper.compiler.Localizer; -import org.apache.jasper.xmlparser.ParserUtils; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; /** - * A class to hold all init parameters specific to the JSP engine. + * A class to hold all init parameters specific to the JSP engine. * * @author Anil K. Vijendran * @author Hans Bergsten * @author Pierre Delisle */ public final class EmbeddedServletOptions implements Options { - + // Logger private Log log = LogFactory.getLog(EmbeddedServletOptions.class); - + private Properties settings = new Properties(); - + /** * Is Jasper being used in development mode? */ private boolean development = true; - + /** * Should Ant fork its java compiles of JSP pages. */ public boolean fork = true; - + /** * Do you want to keep the generated Java files around? */ private boolean keepGenerated = true; - + /** * Should white spaces between directives or actions be trimmed? */ private boolean trimSpaces = false; - + /** * Determines whether tag handler pooling is enabled. */ private boolean isPoolingEnabled = true; - + /** * Do you want support for "mapped" files? This will generate * servlet that has a print statement per line of the JSP file. * This seems like a really nice feature to have for debugging. */ private boolean mappedFile = true; - + /** * Do we want to include debugging information in the class file? */ private boolean classDebugInfo = true; - + /** * Background compile thread check interval in seconds. */ private int checkInterval = 0; - + /** * Is the generation of SMAP info for JSR45 debuggin suppressed? */ private boolean isSmapSuppressed = false; - + /** * Should SMAP info for JSR45 debugging be dumped to a file? */ private boolean isSmapDumped = false; - + /** * Are Text strings to be generated as char arrays? */ private boolean genStringAsCharArray = false; - + private boolean errorOnUseBeanInvalidClassAttribute = true; - + /** * I want to see my generated servlets. Which directory are they * in? */ private File scratchDir; - + /** * Need to have this as is for versions 4 and 5 of IE. Can be set from * the initParams so if it changes in the future all that is needed is * to have a jsp initParam of type ieClassId="<value>" */ private String ieClassId = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"; - + /** * What classpath should I use while compiling generated servlets? */ private String classpath = null; - + /** * Compiler to use. */ private String compiler = null; - + /** * Compiler target VM. */ private String compilerTargetVM = "1.5"; - + /** * The compiler source VM. */ private String compilerSourceVM = "1.5"; - + /** * The compiler class name. */ private String compilerClassName = null; - + /** * Cache for the TLD locations */ private TldLocationsCache tldLocationsCache = null; - + /** * Jsp config information */ private JspConfig jspConfig = null; - + /** * TagPluginManager */ private TagPluginManager tagPluginManager = null; - + /** * Java platform encoding to generate the JSP * page servlet. */ private String javaEncoding = "UTF8"; - + /** * Modification test interval. */ private int modificationTestInterval = 4; - + /** * Is re-compilation attempted immediately after a failure? */ private boolean recompileOnFail = false; - + /** * Is generation of X-Powered-By response header enabled/disabled? */ private boolean xpoweredBy; - + /** * Should we include a source fragment in exception messages, which could be displayed * to the developer ? */ private boolean displaySourceFragment = true; - + public String getProperty(String name ) { return settings.getProperty( name ); } - + public void setProperty(String name, String value ) { - if (name != null && value != null){ + if (name != null && value != null){ settings.setProperty( name, value ); } } - + /** * Are we keeping generated code around? */ public boolean getKeepGenerated() { return keepGenerated; } - + /** * Should white spaces between directives or actions be trimmed? */ public boolean getTrimSpaces() { return trimSpaces; } - + public boolean isPoolingEnabled() { return isPoolingEnabled; } - + /** * Are we supporting HTML mapped servlets? */ public boolean getMappedFile() { return mappedFile; } - + /** * Should errors be sent to client or thrown into stderr? * @deprecated @@ -228,77 +227,77 @@ public final class EmbeddedServletOption public boolean getSendErrorToClient() { return true; } - + /** * Should class files be compiled with debug information? */ public boolean getClassDebugInfo() { return classDebugInfo; } - + /** * Background JSP compile thread check intervall */ public int getCheckInterval() { return checkInterval; } - + /** * Modification test interval. */ public int getModificationTestInterval() { return modificationTestInterval; } - + /** * Re-compile on failure. */ public boolean getRecompileOnFail() { return recompileOnFail; } - + /** * Is Jasper being used in development mode? */ public boolean getDevelopment() { return development; } - + /** * Is the generation of SMAP info for JSR45 debuggin suppressed? */ public boolean isSmapSuppressed() { return isSmapSuppressed; } - + /** * Should SMAP info for JSR45 debugging be dumped to a file? */ public boolean isSmapDumped() { return isSmapDumped; } - + /** * Are Text strings to be generated as char arrays? */ public boolean genStringAsCharArray() { return this.genStringAsCharArray; } - + /** - * Class ID for use in the plugin tag when the browser is IE. + * Class ID for use in the plugin tag when the browser is IE. */ public String getIeClassId() { return ieClassId; } - + /** * What is my scratch dir? */ public File getScratchDir() { return scratchDir; } - + /** * What classpath should I use while compiling the servlets * generated from JSP files? @@ -306,35 +305,35 @@ public final class EmbeddedServletOption public String getClassPath() { return classpath; } - + /** * Is generation of X-Powered-By response header enabled/disabled? */ public boolean isXpoweredBy() { return xpoweredBy; } - + /** * Compiler to use. */ public String getCompiler() { return compiler; } - + /** * @see Options#getCompilerTargetVM */ public String getCompilerTargetVM() { return compilerTargetVM; } - + /** * @see Options#getCompilerSourceVM */ public String getCompilerSourceVM() { return compilerSourceVM; } - + /** * Java compiler class to use. */ @@ -345,39 +344,39 @@ public final class EmbeddedServletOption public boolean getErrorOnUseBeanInvalidClassAttribute() { return errorOnUseBeanInvalidClassAttribute; } - + public void setErrorOnUseBeanInvalidClassAttribute(boolean b) { errorOnUseBeanInvalidClassAttribute = b; } - + public TldLocationsCache getTldLocationsCache() { return tldLocationsCache; } - + public void setTldLocationsCache( TldLocationsCache tldC ) { tldLocationsCache = tldC; } - + public String getJavaEncoding() { return javaEncoding; } - + public boolean getFork() { return fork; } - + public JspConfig getJspConfig() { return jspConfig; } - + public TagPluginManager getTagPluginManager() { return tagPluginManager; } - + public boolean isCaching() { return false; } - + public Map getCache() { return null; } @@ -392,18 +391,18 @@ public final class EmbeddedServletOption /** * Create an EmbeddedServletOptions object using data available from - * ServletConfig and ServletContext. + * ServletConfig and ServletContext. */ public EmbeddedServletOptions(ServletConfig config, ServletContext context) { - + Enumeration enumeration=config.getInitParameterNames(); while( enumeration.hasMoreElements() ) { String k=(String)enumeration.nextElement(); String v=config.getInitParameter( k ); setProperty( k, v); } - + String keepgen = config.getInitParameter("keepgenerated"); if (keepgen != null) { if (keepgen.equalsIgnoreCase("true")) { @@ -416,9 +415,9 @@ public final class EmbeddedServletOption } } } - - - String trimsp = config.getInitParameter("trimSpaces"); + + + String trimsp = config.getInitParameter("trimSpaces"); if (trimsp != null) { if (trimsp.equalsIgnoreCase("true")) { trimSpaces = true; @@ -430,10 +429,10 @@ public final class EmbeddedServletOption } } } - + this.isPoolingEnabled = true; String poolingEnabledParam - = config.getInitParameter("enablePooling"); + = config.getInitParameter("enablePooling"); if (poolingEnabledParam != null && !poolingEnabledParam.equalsIgnoreCase("true")) { if (poolingEnabledParam.equalsIgnoreCase("false")) { @@ -441,11 +440,11 @@ public final class EmbeddedServletOption } else { if (log.isWarnEnabled()) { log.warn(Localizer.getMessage("jsp.warning.enablePooling")); - } + } } } - - String mapFile = config.getInitParameter("mappedfile"); + + String mapFile = config.getInitParameter("mappedfile"); if (mapFile != null) { if (mapFile.equalsIgnoreCase("true")) { this.mappedFile = true; @@ -457,7 +456,7 @@ public final class EmbeddedServletOption } } } - + String debugInfo = config.getInitParameter("classdebuginfo"); if (debugInfo != null) { if (debugInfo.equalsIgnoreCase("true")) { @@ -470,7 +469,7 @@ public final class EmbeddedServletOption } } } - + String checkInterval = config.getInitParameter("checkInterval"); if (checkInterval != null) { try { @@ -481,7 +480,7 @@ public final class EmbeddedServletOption } } } - + String modificationTestInterval = config.getInitParameter("modificationTestInterval"); if (modificationTestInterval != null) { try { @@ -492,8 +491,8 @@ public final class EmbeddedServletOption } } } - - String recompileOnFail = config.getInitParameter("recompileOnFail"); + + String recompileOnFail = config.getInitParameter("recompileOnFail"); if (recompileOnFail != null) { if (recompileOnFail.equalsIgnoreCase("true")) { this.recompileOnFail = true; @@ -517,7 +516,7 @@ public final class EmbeddedServletOption } } } - + String suppressSmap = config.getInitParameter("suppressSmap"); if (suppressSmap != null) { if (suppressSmap.equalsIgnoreCase("true")) { @@ -530,7 +529,7 @@ public final class EmbeddedServletOption } } } - + String dumpSmap = config.getInitParameter("dumpSmap"); if (dumpSmap != null) { if (dumpSmap.equalsIgnoreCase("true")) { @@ -543,8 +542,12 @@ public final class EmbeddedServletOption } } } - - String genCharArray = config.getInitParameter("genStrAsCharArray"); + + String genCharArray = config.getInitParameter("genStringAsCharArray"); + if (genCharArray == null) { + // Try the old name + genCharArray = config.getInitParameter("genStrAsCharArray"); + } if (genCharArray != null) { if (genCharArray.equalsIgnoreCase("true")) { genStringAsCharArray = true; @@ -556,7 +559,7 @@ public final class EmbeddedServletOption } } } - + String errBeanClass = config.getInitParameter("errorOnUseBeanInvalidClassAttribute"); if (errBeanClass != null) { @@ -570,19 +573,19 @@ public final class EmbeddedServletOption } } } - + String ieClassId = config.getInitParameter("ieClassId"); if (ieClassId != null) this.ieClassId = ieClassId; - + String classpath = config.getInitParameter("classpath"); if (classpath != null) this.classpath = classpath; - + /* * scratchdir */ - String dir = config.getInitParameter("scratchdir"); + String dir = config.getInitParameter("scratchdir"); if (dir != null) { scratchDir = new File(dir); } else { @@ -595,39 +598,39 @@ public final class EmbeddedServletOption if (dir != null) scratchDir = new File(dir); } - } + } if (this.scratchDir == null) { log.fatal(Localizer.getMessage("jsp.error.no.scratch.dir")); return; } - + if (!(scratchDir.exists() && scratchDir.canRead() && scratchDir.canWrite() && scratchDir.isDirectory())) log.fatal(Localizer.getMessage("jsp.error.bad.scratch.dir", scratchDir.getAbsolutePath())); - + this.compiler = config.getInitParameter("compiler"); - + String compilerTargetVM = config.getInitParameter("compilerTargetVM"); if(compilerTargetVM != null) { this.compilerTargetVM = compilerTargetVM; } - + String compilerSourceVM = config.getInitParameter("compilerSourceVM"); if(compilerSourceVM != null) { this.compilerSourceVM = compilerSourceVM; } - + String javaEncoding = config.getInitParameter("javaEncoding"); if (javaEncoding != null) { this.javaEncoding = javaEncoding; } - + String compilerClassName = config.getInitParameter("compilerClassName"); if (compilerClassName != null) { this.compilerClassName = compilerClassName; } - + String fork = config.getInitParameter("fork"); if (fork != null) { if (fork.equalsIgnoreCase("true")) { @@ -640,8 +643,8 @@ public final class EmbeddedServletOption } } } - - String xpoweredBy = config.getInitParameter("xpoweredBy"); + + String xpoweredBy = config.getInitParameter("xpoweredBy"); if (xpoweredBy != null) { if (xpoweredBy.equalsIgnoreCase("true")) { this.xpoweredBy = true; @@ -653,8 +656,8 @@ public final class EmbeddedServletOption } } } - - String displaySourceFragment = config.getInitParameter("displaySourceFragment"); + + String displaySourceFragment = config.getInitParameter("displaySourceFragment"); if (displaySourceFragment != null) { if (displaySourceFragment.equalsIgnoreCase("true")) { this.displaySourceFragment = true; @@ -666,17 +669,17 @@ public final class EmbeddedServletOption } } } - + // Setup the global Tag Libraries location cache for this // web-application. tldLocationsCache = new TldLocationsCache(context); - + // Setup the jsp config info for this web app. jspConfig = new JspConfig(context); - + // Create a Tag plugin instance tagPluginManager = new TagPluginManager(context); } - + } Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings.properties?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings.properties (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings.properties Tue Jan 14 09:35:25 2014 @@ -174,7 +174,7 @@ jsp.warning.development=Warning: Invalid jsp.warning.fork=Warning: Invalid value for the initParam fork. Will use the default value of \"true\" jsp.warning.reloading=Warning: Invalid value for the initParam reloading. Will use the default value of \"true\" jsp.warning.dumpSmap=Warning: Invalid value for the initParam dumpSmap. Will use the default value of \"false\" -jsp.warning.genchararray=Warning: Invalid value for the initParam genStrAsCharArray. Will use the default value of \"false\" +jsp.warning.genchararray=Warning: Invalid value for the initParam genStringAsCharArray. Will use the default value of \"false\" jsp.warning.suppressSmap=Warning: Invalid value for the initParam suppressSmap. Will use the default value of \"false\" jsp.warning.displaySourceFragment=Warning: Invalid value for the initParam displaySourceFragment. Will use the default value of \"true\" jsp.error.badtaglib=Unable to open taglibrary {0} : {1} Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_es.properties URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_es.properties?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_es.properties (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_es.properties Tue Jan 14 09:35:25 2014 @@ -167,7 +167,7 @@ jsp.warning.development = Aviso\: valor jsp.warning.fork = Aviso\: valor incorrecto para el initParam fork. Se usar\u00E1 el valor por defecto de "true" jsp.warning.reloading = Aviso\: valor incorrecto para el initParam reloading. Se usar\u00E1 el valor por defecto de "true" jsp.warning.dumpSmap = Aviso\: valor incorrecto para el initParam dumpSmap. Se usar\u00E1 el valor por defecto de "false" -jsp.warning.genchararray = Aviso\: valor incorrecto para el initParam genStrAsCharArray. Se usar\u00E1 el valor por defecto de "false" +jsp.warning.genchararray = Aviso\: valor incorrecto para el initParam genStringAsCharArray. Se usar\u00E1 el valor por defecto de "false" jsp.warning.suppressSmap = Aviso\: valor incorrecto para el initParam suppressSmap. Se usar\u00E1 el valor por defecto de "false" jsp.warning.displaySourceFragment = Aviso\: valor incorrecto para el initParam displaySourceFragment. Se usar\u00E1 el valor por defecto de "verdadero" jsp.error.badtaglib = No se puede abrir la biblioteca de tags {0}\: {1} Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties Tue Jan 14 09:35:25 2014 @@ -158,7 +158,7 @@ jsp.warning.development=\u8b66\u544a: in jsp.warning.fork=\u8b66\u544a: initParam fork\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002\"true\"\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u3092\u4f7f\u7528\u3057\u307e\u3059 jsp.warning.reloading=\u8b66\u544a: initParam reloading\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002\"true\"\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u3092\u4f7f\u7528\u3057\u307e\u3059 jsp.warning.dumpSmap=\u8b66\u544a: initParam dumpSmap\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002\"false\"\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u3092\u4f7f\u7528\u3057\u307e\u3059 -jsp.warning.genchararray=\u8b66\u544a: initParam genStrAsCharArray\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002\"false\"\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u3092\u4f7f\u7528\u3057\u307e\u3059 +jsp.warning.genchararray=\u8b66\u544a: initParam genStringAsCharArray\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002\"false\"\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u3092\u4f7f\u7528\u3057\u307e\u3059 jsp.warning.suppressSmap=\u8b66\u544a: initParam suppressSmap\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002\u30c7\u30d5\u30a9\u30eb\u30c8\u5024 \"false\" \u3092\u4f7f\u7528\u3057\u307e\u3059 jsp.error.badtaglib=\u30bf\u30b0\u30e9\u30a4\u30d6\u30e9\u30ea {0} \u3092\u30aa\u30fc\u30d7\u30f3\u3067\u304d\u307e\u305b\u3093: {1} jsp.error.badGetReader=\u30b9\u30c8\u30ea\u30fc\u30e0\u304c\u30d0\u30c3\u30d5\u30a1\u30ea\u30f3\u30b0\u3055\u308c\u3066\u3044\u306a\u3044\u5834\u5408\u306b\u306f\u3001Reader\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093 Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Tue Jan 14 09:35:25 2014 @@ -145,6 +145,14 @@ and quoted XML characters are correctly quoted in the output. (markt) </fix> <fix> + <bug>55671</bug>: Consistently use the configuration option name + <code>genStringAsCharArray</code> rather than a mixture of + <code>genStrAsCharArray</code> and <code>genStringAsCharArray</code> but + retain support for <code>genStrAsCharArray</code> as in initialisation + parameter for the JSP servlet to retain backwards compatibility with + existing configurations. (markt) + </fix> + <fix> <bug>55691</bug>: Fix <code>javax.el.ArrayELResolver</code> to correctly handle the case where the base object is an array of primitives. (markt) </fix> @@ -152,6 +160,19 @@ <bug>55973</bug>: Fix processing of XML schemas when validation is enabled in Jasper. (kkolinko) </fix> + Consistent naming for genStringAsCharArray + https://issues.apache.org/bugzilla/attachment.cgi?id=31187 + +1: markt, remm, mturk + -0: kkolinko: I think "genStrAsCharArray" is the proper and + documented name for Tomcat 6. If we change the init-param name + for better compatibility with Tomcat 7 (a good thing, +1), + the code should check both the new and the old param names. + It also needs r1556725. + https://issues.apache.org/bugzilla/show_bug.cgi?id=55671#c1 + markt: patch updated + -1: + + </changelog> </subsection> <subsection name="Web applications"> Modified: tomcat/tc6.0.x/trunk/webapps/docs/jasper-howto.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/jasper-howto.xml?rev=1557994&r1=1557993&r2=1557994&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/webapps/docs/jasper-howto.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/jasper-howto.xml Tue Jan 14 09:35:25 2014 @@ -139,8 +139,10 @@ valid bean class? <code>true</code> or < performed in a separate JVM from Tomcat? <code>true</code> or <code>false</code>, default <code>true</code>.</li> -<li><strong>genStrAsCharArray</strong> - Should text strings be generated as char -arrays, to improve performance in some cases? Default <code>false</code>.</li> +<li><strong>genStringAsCharArray</strong> - Should text strings be generated as +char arrays, to improve performance in some cases? Default +<code>false</code>. The alternative name of <strong>genStrAsCharArray</strong> +for this initialisation parameter is also supported.</li> <li><strong>ieClassId</strong> - The class-id value to be sent to Internet Explorer when using <jsp:plugin> tags. Default --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org