cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties
markt 2005/01/07 12:31:05 Modified:jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties messages_es.properties Log: Fix bug 29335. String name in code did not agree with resources files. Revision ChangesPath No revision No revision 1.9.2.12 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages.properties,v retrieving revision 1.9.2.11 retrieving revision 1.9.2.12 diff -u -r1.9.2.11 -r1.9.2.12 --- messages.properties 10 Mar 2004 21:33:09 - 1.9.2.11 +++ messages.properties 7 Jan 2005 20:31:05 - 1.9.2.12 @@ -155,7 +155,7 @@ jsp.error.unable.to_find_method=Unable to find setter method for attribute: {0} jsp.error.unable.to_convert_string=Unable to convert a String to {0} for attribute {1} jsp.error.unable.to_introspect=Unable to introspect on tag handler class: {0} because of {1} -jsp.error.invalid_attributes=Attributes are invalid according to TagInfo +jsp.error.invalid.attributes=Attributes are invalid according to TagInfo jsp.error.bad_tag=No such tag {0} in the tag library imported with prefix {1} jsp.error.bad_string_Character=Cannot extract a Character from a zero length array jsp.error.bad_string_char=Cannot extract a char from a zero length array 1.3.2.5 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages_es.properties,v retrieving revision 1.3.2.4 retrieving revision 1.3.2.5 diff -u -r1.3.2.4 -r1.3.2.5 --- messages_es.properties10 Mar 2004 21:33:09 - 1.3.2.4 +++ messages_es.properties7 Jan 2005 20:31:05 - 1.3.2.5 @@ -131,7 +131,7 @@ jsp.error.unable.to_load_taghandler_class=No se puede cargar clase manejadora {0} del tag acausa de {1} jsp.error.unable.to_find_method=No se puede encontrar el metodo de escritura para el atributo: {0} jsp.error.unable.to_introspect=No se puede introspect on tag handler clase: {0} a causa de {1} -jsp.error.invalid_attributes=Los atributos no son validos de acuerdo con TagInfo +jsp.error.invalid.attributes=Los atributos no son validos de acuerdo con TagInfo jsp.error.bad_tag=No existe el tag {0} en la libreria importada con prefijo {1} jsp.warning.compiler.class.cantcreate=No puede crear una instancia de la clase {0} de compilador especificada debido a {1}. Se usara el compilador del JDK por defecto. jsp.warning.compiler.class.notfound=No puede encontrar una instancia de la clase {0} de compilador. Se usara el compilador del JDK por defecto. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
yoavs 2004/11/19 06:37:48 Modified:webapps/docs Tag: TOMCAT_5_0 changelog.xml jasper2/src/share/org/apache/jasper Tag: TOMCAT_5_0 JspC.java jasper2/src/share/org/apache/jasper/resources Tag: TOMCAT_5_0 messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Undoing my fix allowing for customizable extensions, after tomcat-dev discussion. Revision ChangesPath No revision No revision 1.70.2.76 +0 -3 jakarta-tomcat-catalina/webapps/docs/changelog.xml Index: changelog.xml === RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/docs/changelog.xml,v retrieving revision 1.70.2.75 retrieving revision 1.70.2.76 diff -u -r1.70.2.75 -r1.70.2.76 --- changelog.xml 18 Nov 2004 22:22:02 - 1.70.2.75 +++ changelog.xml 19 Nov 2004 14:37:47 - 1.70.2.76 @@ -87,9 +87,6 @@ Exposed compilerSourceVM and compilerTargetVM options to JspC. (yoavs) /update update -bug32257/bug: Added ability to customize JSP file extensions in JspC. (yoavs) - /update - update Updated JspC usage messages to include recently added configurable parameters. (yoavs) /update /changelog No revision No revision 1.80.2.5 +1 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.80.2.4 retrieving revision 1.80.2.5 diff -u -r1.80.2.4 -r1.80.2.5 --- JspC.java 18 Nov 2004 14:38:16 - 1.80.2.4 +++ JspC.java 19 Nov 2004 14:37:47 - 1.80.2.5 @@ -114,7 +114,6 @@ private static final String SWITCH_DIE = -die; private static final String SWITCH_POOLING = -poolingEnabled; private static final String SWITCH_ENCODING = -javaEncoding; -private static final String SWITCH_ADD_EXTENSION = -addExtension; private static final String SHOW_SUCCESS =-s; private static final String LIST_ERRORS = -l; @@ -293,8 +292,6 @@ setCompilerSourceVM(nextArg()); } else if (tok.equals(SWITCH_TARGET)) { setCompilerTargetVM(nextArg()); -} else if (tok.equals(SWITCH_ADD_EXTENSION)) { -addExtension(nextArg()); } else { if (tok.startsWith(-)) { throw new JasperException(Unrecognized option: + tok + @@ -566,7 +563,7 @@ * * @param extension The extension to add, e.g. myjsp */ -public void addExtension(final String extension) { +protected void addExtension(final String extension) { if(extension != null) { if(extensions == null) { extensions = new Vector(); No revision No revision 1.146.2.2 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages.properties,v retrieving revision 1.146.2.1 retrieving revision 1.146.2.2 diff -u -r1.146.2.1 -r1.146.2.2 --- messages.properties 18 Nov 2004 14:38:16 - 1.146.2.1 +++ messages.properties 19 Nov 2004 14:37:47 - 1.146.2.2 @@ -230,7 +230,6 @@ \-javaEncoding enc Set the encoding charset for Java classes (default UTF-8)\n\ \-source version Set the -source argument to the compiler (default 1.4)\n\ \-target version Set the -target argument to the compiler (default 1.4)\n\ -\-addExtension ext Add a file extension for JSP processing, e.g myjsp\n\ jspc.webxml.header=?xml version=1.0 encoding=ISO-8859-1?\n\ \n\ 1.50.2.2 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/Attic/messages_es.properties,v retrieving revision 1.50.2.1 retrieving revision 1.50.2.2 diff -u -r1.50.2.1 -r1.50.2.2 --- messages_es.properties18 Nov 2004 14:38:16 - 1.50.2.1 +++ messages_es.properties19 Nov 2004 14:37:48 - 1.50.2.2 @@ -231,7 +231,6 @@ \-javaEncoding enc Set the encoding
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
yoavs 2004/11/18 06:38:17 Modified:webapps/docs Tag: TOMCAT_5_0 changelog.xml jasper2/src/share/org/apache/jasper Tag: TOMCAT_5_0 JspC.java jasper2/src/share/org/apache/jasper/resources Tag: TOMCAT_5_0 messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Bugzilla 32257: add configurable file name extensions to JspC. Also updated JspC usage messages. Revision ChangesPath No revision No revision 1.70.2.73 +6 -0 jakarta-tomcat-catalina/webapps/docs/changelog.xml Index: changelog.xml === RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/docs/changelog.xml,v retrieving revision 1.70.2.72 retrieving revision 1.70.2.73 diff -u -r1.70.2.72 -r1.70.2.73 --- changelog.xml 17 Nov 2004 20:06:35 - 1.70.2.72 +++ changelog.xml 18 Nov 2004 14:38:14 - 1.70.2.73 @@ -81,6 +81,12 @@ update Exposed compilerSourceVM and compilerTargetVM options to JspC. (yoavs) /update + update +bug32257/bug: Added ability to customize JSP file extensions in JspC. (yoavs) + /update + update +Updated JspC usage messages to include recently added configurable parameters. (yoavs) + /update /changelog /subsection No revision No revision 1.80.2.4 +46 -6 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.80.2.3 retrieving revision 1.80.2.4 diff -u -r1.80.2.3 -r1.80.2.4 --- JspC.java 22 Oct 2004 16:51:23 - 1.80.2.3 +++ JspC.java 18 Nov 2004 14:38:16 - 1.80.2.4 @@ -32,6 +32,7 @@ import java.net.URLClassLoader; import java.util.ArrayList; import java.util.Enumeration; +import java.util.List; import java.util.Stack; import java.util.StringTokenizer; import java.util.Vector; @@ -80,6 +81,7 @@ * @author Danno Ferrin * @author Pierre Delisle * @author Costin Manolache + * @author Yoav Shapira */ public class JspC implements Options { @@ -112,6 +114,8 @@ private static final String SWITCH_DIE = -die; private static final String SWITCH_POOLING = -poolingEnabled; private static final String SWITCH_ENCODING = -javaEncoding; +private static final String SWITCH_ADD_EXTENSION = -addExtension; + private static final String SHOW_SUCCESS =-s; private static final String LIST_ERRORS = -l; private static final int NO_WEBXML = 0; @@ -150,7 +154,13 @@ private String compilerSourceVM = 1.3; private boolean classDebugInfo = true; -private Vector extensions; + +/** + * The file extensions to be handled as JSP files. + * Default list is .jsp and .jspx. + */ +private List extensions; + private Vector pages = new Vector(); private boolean errorOnUseBeanInvalidClassAttribute = true; @@ -283,6 +293,8 @@ setCompilerSourceVM(nextArg()); } else if (tok.equals(SWITCH_TARGET)) { setCompilerTargetVM(nextArg()); +} else if (tok.equals(SWITCH_ADD_EXTENSION)) { +addExtension(nextArg()); } else { if (tok.startsWith(-)) { throw new JasperException(Unrecognized option: + tok + @@ -538,6 +550,32 @@ classPath=s; } +/** + * Returns the list of file extensions + * that are treated as JSP files. + * + * @return The list of extensions + */ +public List getExtensions() { +return extensions; +} + +/** + * Adds the given file extension to the + * list of extensions handled as JSP files. + * + * @param extension The extension to add, e.g. myjsp + */ +public void addExtension(final String extension) { +if(extension != null) { +if(extensions == null) { +extensions = new Vector(); +} + +extensions.add(extension); +} +} + /** * Base dir for the webapp. Used to generate class names and resolve * includes @@ -852,11 +890,13 @@ public void scanFiles( File base ) throws JasperException { Stack dirs = new Stack(); dirs.push(base); -if (extensions == null) { -extensions = new Vector(); -
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2004/06/25 12:04:23 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Reverted fix for Bugzilla 29763 (The encoding of jsp document). We're supposed to throw an error only if there is an encoding declaration in the XML prolog that does not match the page encoding from the page directive or jsp-config. We must not throw any error if there is no XML prolog or encoding declaration in the prolog. The motivation for this is to make sure that JSP 1.2 pages with a page directive specifying a page encoding other than the default will continue to work in JSP 2.0 in most cases. The code is currently going through lots of pains to determine whether the encoding was specified in the XML prolog, or autodetected, to decide whether an error should be thrown. Revision ChangesPath 1.148 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.147 retrieving revision 1.148 diff -u -r1.147 -r1.148 --- messages.properties 24 Jun 2004 19:05:12 - 1.147 +++ messages.properties 25 Jun 2004 19:04:23 - 1.148 @@ -327,7 +327,7 @@ jsp.error.tagdirective.badbodycontent=Invalid body-content ({0}) in tag directive jsp.error.simpletag.badbodycontent=The TLD for the class {0} specifies an invalid body-content (JSP) for a SimpleTag. jsp.error.config_pagedir_encoding_mismatch=Page-encoding specified in jsp-property-group ({0}) is different from that specified in page directive ({1}) -jsp.error.prolog_pagedir_encoding_mismatch=Page-encoding derived from XML prolog ({0}) is different from that specified in page directive ({1}) +jsp.error.prolog_pagedir_encoding_mismatch=Page-encoding specified in XML prolog ({0}) is different from that specified in page directive ({1}) jsp.error.prolog_config_encoding_mismatch=Page-encoding specified in XML prolog ({0}) is different from that specified in jsp-property-group ({1}) jsp.error.attribute.custom.non_rt_with_expr=According to TLD or attribute directive in tag file, attribute {0} does not accept any expressions jsp.error.attribute.standard.non_rt_with_expr=The {0} attribute of the {1} standard action does not accept any expressions - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2004/06/24 12:05:12 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed Bugzilla 29763 (The encoding of jsp document) Revision ChangesPath 1.147 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.146 retrieving revision 1.147 diff -u -r1.146 -r1.147 --- messages.properties 25 May 2004 21:28:40 - 1.146 +++ messages.properties 24 Jun 2004 19:05:12 - 1.147 @@ -327,7 +327,7 @@ jsp.error.tagdirective.badbodycontent=Invalid body-content ({0}) in tag directive jsp.error.simpletag.badbodycontent=The TLD for the class {0} specifies an invalid body-content (JSP) for a SimpleTag. jsp.error.config_pagedir_encoding_mismatch=Page-encoding specified in jsp-property-group ({0}) is different from that specified in page directive ({1}) -jsp.error.prolog_pagedir_encoding_mismatch=Page-encoding specified in XML prolog ({0}) is different from that specified in page directive ({1}) +jsp.error.prolog_pagedir_encoding_mismatch=Page-encoding derived from XML prolog ({0}) is different from that specified in page directive ({1}) jsp.error.prolog_config_encoding_mismatch=Page-encoding specified in XML prolog ({0}) is different from that specified in jsp-property-group ({1}) jsp.error.attribute.custom.non_rt_with_expr=According to TLD or attribute directive in tag file, attribute {0} does not accept any expressions jsp.error.attribute.standard.non_rt_with_expr=The {0} attribute of the {1} standard action does not accept any expressions - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
luehe 2004/05/25 14:28:40 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Include javac errors whose line numbers cannot be mapped to JSP page in error message that is returned to client. For instance, a missing closing brace in a scriptlet causes havoc with the try-catch-finally block that that JSP compiler puts around all generated code, and the resulting javac error line numbers fall outside the scope of the begin and end java line numbers of the scriptlet (and therefore cannot be mapped back to the JSP line number of the scriptlet). (This used to return the misleading error message about failure to find javac compiler.) Revision ChangesPath 1.146 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.145 retrieving revision 1.146 diff -u -r1.145 -r1.146 --- messages.properties 21 May 2004 00:22:06 - 1.145 +++ messages.properties 25 May 2004 21:28:40 - 1.146 @@ -291,7 +291,7 @@ jsp.error.invalid.javaEncoding=Invalid java encodings. Tried {0} and then {1}. Both failed. jsp.error.needAlternateJavaEncoding=Default java encoding {0} is invalid on your java platform. An alternate can be specified via the 'javaEncoding' parameter of JspServlet. #Error when compiling, used for jsp line number error messages -jsp.error.single.line.number=\n\nAn error occurred at line: {0} in the jsp file: {1}\n\n +jsp.error.single.line.number=An error occurred at line: {0} in the jsp file: {1} jsp.error.multiple.line.number=\n\nAn error occurred between lines: {0} and {1} in the jsp file: {2}\n\n jsp.error.corresponding.servlet=Generated servlet error:\n jsp.error.empty.body.not.allowed=Empty body not allowed for {0} 1.50 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- messages_es.properties21 May 2004 00:22:06 - 1.49 +++ messages_es.properties25 May 2004 21:28:40 - 1.50 @@ -292,7 +292,7 @@ jsp.error.invalid.javaEncoding=Codificaciones java incorrectas. Intenté {0} y luego {1}. Ambas fallaron. jsp.error.needAlternateJavaEncoding=La codificación java por defecto {0} es incorrecta en tu plataforma java. Se puede especificar una alternativa vía parámetro 'javaEncoding' de JspServlet. #Error when compiling, used for jsp line number error messages -jsp.error.single.line.number=\n\nHa tenido lugar un error en la línea: {0} en el archivo jsp: {1}\n\n +jsp.error.single.line.number=Ha tenido lugar un error en la línea: {0} en el archivo jsp: {1} jsp.error.multiple.line.number=\n\nHa tenido lugar un error entre las líneas: {0} y {1} en el archivo jsp: {2}\n\n jsp.error.corresponding.servlet=Error de servlet generado:\n jsp.error.empty.body.not.allowed=Cuerpo vacío no permitido para {0} 1.33 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.32 retrieving revision 1.33 diff -u -r1.32 -r1.33 --- messages_fr.properties10 Mar 2004 21:16:31 - 1.32 +++ messages_fr.properties25 May 2004 21:28:40 - 1.33 @@ -243,7 +243,7 @@ jsp.error.invalid.javaEncoding=Encodage java incorrect. Essai de {0} puis de {1}. Les deux ont échoué. jsp.error.needAlternateJavaEncoding=L''encodage java par défaut {0} est incorrect sur votre environnement java. Une alternative peut être indiquée via le paramêtre 'javaEncoding' de la JspServlet. #Erreur lors de la compilation, utilisé pour la ligne jsp des messages d''erreur -jsp.error.single.line.number=\n\nUne erreur s''est produite à la ligne: {0} dans le fichier jsp: {1}\n\n +jsp.error.single.line.number=Une erreur s''est produite à la ligne: {0} dans le fichier jsp: {1} jsp.error.multiple.line.number=\n\nUne erreur s''est produite entre les lignes: {0} et {1} dans le fichier jsp: {2}\n\n jsp.error.corresponding.servlet=Erreur de servlet générée:\n jsp.error.empty.body.not.allowed=Un
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2004/05/12 17:05:04 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed error messages for jsp.error.variable.both/alias Revision ChangesPath 1.144 +3 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.143 retrieving revision 1.144 diff -u -r1.143 -r1.144 --- messages.properties 16 Mar 2004 03:12:15 - 1.143 +++ messages.properties 13 May 2004 00:05:04 - 1.144 @@ -389,8 +389,8 @@ jsp.error.nested.jspattribute=A jsp:attribute standard action cannot be nested within another jsp:attribute standard action jsp.error.nested.jspbody=A jsp:body standard action cannot be nested within another jsp:body or jsp:attribute standard action jsp.error.variable.either.name=Either name-given or name-from-attribute attribute must be specified in a variable directive -jsp.error.variable.both.name=Cannot specified both name-given or name-from-attribute attributes in a variable directive -jsp.error.variable.alias=Both or none of the name-from-attribute and alias attributes can be specified in a variable directive +jsp.error.variable.both.name=Cannot specify both name-given or name-from-attribute attributes in a variable directive +jsp.error.variable.alias=Both or none of the name-from-attribute and alias attributes must be specified in a variable directive jsp.error.attribute.null_name=Null attribute name jsp.error.jsptext.badcontent=\'lt;\', when appears in the body of lt;jsp:textgt;, must be encapsulated within a CDATA jsp.error.jsproot.version.invalid=Invalid version number: \{0}\, must be \1.2\ or \2.0\ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2004/03/15 19:12:15 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Added trimSpaces option to JspC help message Revision ChangesPath 1.143 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.142 retrieving revision 1.143 diff -u -r1.142 -r1.143 --- messages.properties 10 Mar 2004 21:16:31 - 1.142 +++ messages.properties 16 Mar 2004 03:12:15 - 1.143 @@ -230,6 +230,7 @@ \-ieplugin clsid Java Plugin classid for Internet Explorer\n\ \-classpath path Overrides java.class.path system property\n\ \-xpoweredByAdd X-Powered-By response header\n\ +\-trimSpacesTrim spaces in template text between actions, directives\n\ jspc.webxml.header=?xml version=1.0 encoding=ISO-8859-1?\n\ \n\ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
markt 2004/03/10 13:16:32 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Fix 14359. Remove last traces of largefile option. Revision ChangesPath 1.142 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.141 retrieving revision 1.142 diff -u -r1.141 -r1.142 --- messages.properties 26 Feb 2004 00:19:01 - 1.141 +++ messages.properties 10 Mar 2004 21:16:31 - 1.142 @@ -140,7 +140,6 @@ jsp.error.setproperty.paramOrValue=setProperty: either param or value can be present jsp.error.setproperty.arrayVal=setProperty: can't set array property {0} through a string constant value jsp.warning.keepgen=Warning: Invalid value for the initParam keepgenerated. Will use the default value of \false\ -jsp.warning.largeFile=Warning: Invalid value for the initParam largeFile. Will use the default value of \true\ jsp.warning.xpoweredBy=Warning: Invalid value for the initParam xpoweredBy. Will use the default value of \false\ jsp.warning.enablePooling=Warning: Invalid value for the initParam enablePooling. Will use the default value of \true\ jsp.warning.invalidTagPoolSize=Warning: Invalid value for the init parameter named tagPoolSize. Will use default size of {0} 1.48 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.47 retrieving revision 1.48 diff -u -r1.47 -r1.48 --- messages_es.properties18 Feb 2004 21:22:21 - 1.47 +++ messages_es.properties10 Mar 2004 21:16:31 - 1.48 @@ -138,7 +138,6 @@ jsp.error.setproperty.paramOrValue=setProperty: O param o value pueden estar presentes jsp.error.setproperty.arrayVal=setProperty: No puede escribir en la propiedad de array {0} a través de una valor de cadena literal jsp.warning.keepgen=Aviso: valor incorrecto para el initParam keepgen. Se usará el valor por defecto de \false\ -jsp.warning.largeFile=Aviso: valor incorrecto para el initParam largeFile. Se usará el valor por defecto de \true\ jsp.warning.xpoweredBy=Aviso: valor incorrecto para el initParam xpoweredBy. Se usará el valor por defecto de \false\ jsp.warning.enablePooling=Aviso: valor incorrecto para el initParam enablePooling. Se usará el valor por defecto de \true\ jsp.warning.invalidTagPoolSize=Aviso: valor incorrecto para el parámetro init llamado tagPoolSize. Se usará la medida por defecto de {0} 1.32 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- messages_fr.properties18 Feb 2004 21:22:21 - 1.31 +++ messages_fr.properties10 Mar 2004 21:16:31 - 1.32 @@ -105,7 +105,6 @@ jsp.error.setproperty.paramOrValue=setProperty: param ou value doit être présent jsp.error.setproperty.arrayVal=setProperty: on ne peut renseigner les array property {0} au travers d''une valeur chaîne constante (string constant value) jsp.warning.keepgen=Attention: Valeur incorrecte pour le initParam keepgenerated. Utilisation de la valeur par défaut \false\ -jsp.warning.largeFile=Attention: Valeur incorrecte pour le initParam largeFile. Utilisation de la valeur par défaut \true\ jsp.warning.enablePooling=Attention: Valeur incorrecte pour le initParam enablePooling. Utilisation de la valeur par défaut \true\ jsp.warning.mappedFile=Attention: Valeur incorrecte pour le initParam mappedFile. Utilisation de la valeur par défaut \false\ jsp.warning.sendErrToClient=Attention: Valeur incorrecte pour le initParam sendErrToClient. Utilisation de la valeur par défaut \false\ 1.51 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties Index: messages_ja.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties,v retrieving revision 1.50
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties
markt 2004/03/10 13:33:10 Modified:jasper2/src/share/org/apache/jasper Tag: tomcat_4_branch EmbededServletOptions.java JspC.java Options.java jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties messages_es.properties messages_ja.properties Log: - Fix 14359. Remove the last traces of the largefile option. Revision ChangesPath No revision No revision 1.8.2.5 +3 -28 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Attic/EmbededServletOptions.java Index: EmbededServletOptions.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Attic/EmbededServletOptions.java,v retrieving revision 1.8.2.4 retrieving revision 1.8.2.5 diff -u -r1.8.2.4 -r1.8.2.5 --- EmbededServletOptions.java5 Feb 2004 22:19:06 - 1.8.2.4 +++ EmbededServletOptions.java10 Mar 2004 21:33:09 - 1.8.2.5 @@ -99,14 +99,6 @@ public boolean keepGenerated = true; /** - * Indicates if large files should be supported. What this essentially - * means is that we generated code so that the HTML data in a JSP - * file is stored separately as opposed to those constant string - * data being used literally in the generated servlet. - */ -public boolean largeFile = false; - -/** * Determines whether tag handler pooling is enabled. */ public boolean poolingEnabled = true; @@ -189,13 +181,6 @@ return keepGenerated; } -/** - * Getter method to determine large file support. - */ -public boolean getLargeFile() { -return largeFile; -} - public boolean isPoolingEnabled() { return poolingEnabled; } @@ -318,16 +303,6 @@ else Constants.message (jsp.warning.keepgen, Logger.WARNING); } - -String largeFile = config.getInitParameter(largefile); -if (largeFile != null) { -if (largeFile.equalsIgnoreCase(true)) -this.largeFile = true; -else if (largeFile.equalsIgnoreCase(false)) -this.largeFile = false; -else Constants.message (jsp.warning.largeFile, Logger.WARNING); -} - String mapFile = config.getInitParameter(mappedfile); if (mapFile != null) { if (mapFile.equalsIgnoreCase(true)) 1.12.2.8 +3 -8 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.12.2.7 retrieving revision 1.12.2.8 diff -u -r1.12.2.7 -r1.12.2.8 --- JspC.java 5 Feb 2004 22:19:06 - 1.12.2.7 +++ JspC.java 10 Mar 2004 21:33:09 - 1.12.2.8 @@ -146,7 +146,6 @@ //public static final String SWITCH_XML_OUTPUT = -xml; -boolean largeFile = false; boolean mappedFile = false; int jspVerbosityLevel = Logger.INFORMATION; @@ -203,10 +202,6 @@ return true; } -public boolean getLargeFile() { -return largeFile; -} - public boolean isPoolingEnabled() { return true; } 1.6.2.3 +3 -9 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options.java Index: Options.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options.java,v retrieving revision 1.6.2.2 retrieving revision 1.6.2.3 diff -u -r1.6.2.2 -r1.6.2.3 --- Options.java 5 Feb 2004 22:19:06 - 1.6.2.2 +++ Options.java 10 Mar 2004 21:33:09 - 1.6.2.3 @@ -80,12 +80,6 @@ */ public boolean getKeepGenerated(); - -/** - * Are we supporting large files? - */ -public boolean getLargeFile(); - /** * Returns true if tag handler pooling is enabled, false otherwise. */ No revision No revision 1.9.2.11 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.9.2.10 retrieving revision 1.9.2.11 diff -u -r1.9.2.10 -r1.9.2.11 --- messages.properties 7 Jan 2004 00:39:20 - 1.9.2.10 +++
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2004/02/25 16:19:02 Modified:jasper2/src/share/org/apache/jasper/compiler PageInfo.java Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - According to the spec, it is a fatal error for the taglib directive to appear after actions using the prefix introduced by it. Revision ChangesPath 1.40 +13 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java Index: PageInfo.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java,v retrieving revision 1.39 retrieving revision 1.40 diff -u -r1.39 -r1.40 --- PageInfo.java 14 Aug 2003 21:16:52 - 1.39 +++ PageInfo.java 26 Feb 2004 00:19:01 - 1.40 @@ -81,6 +81,7 @@ private HashMap taglibsMap; private HashMap jspPrefixMapper; private HashMap xmlPrefixMapper; +private HashMap nonCustomTagPrefixMap; private String defaultLanguage = java; private String language; private String defaultExtends = Constants.JSP_SERVLET_BASE; @@ -125,6 +126,7 @@ this.taglibsMap = new HashMap(); this.jspPrefixMapper = new HashMap(); this.xmlPrefixMapper = new HashMap(); +this.nonCustomTagPrefixMap = new HashMap(); this.imports = new Vector(); this.dependants = new Vector(); this.includePrelude = new Vector(); @@ -656,5 +658,13 @@ public boolean isELIgnored() { return isELIgnored; +} + +public void putNonCustomTagPrefix(String prefix, Mark where) { +nonCustomTagPrefixMap.put(prefix, where); +} + +public Mark getNonCustomTagPrefix(String prefix) { +return (Mark) nonCustomTagPrefixMap.get(prefix); } } 1.88 +10 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.87 retrieving revision 1.88 diff -u -r1.87 -r1.88 --- Parser.java 15 Dec 2003 19:24:20 - 1.87 +++ Parser.java 26 Feb 2004 00:19:01 - 1.88 @@ -447,6 +447,11 @@ String uri = attrs.getValue(uri); String prefix = attrs.getValue(prefix); if (prefix != null) { +Mark prevMark = pageInfo.getNonCustomTagPrefix(prefix); +if (prevMark != null) { +err.jspError(reader.mark(), jsp.error.prefix.use_before_dcl, +prefix, prevMark.getFile(), + prevMark.getLineNumber()); +} if (uri != null) { String uriPrev = pageInfo.getURI(prefix); if (uriPrev != null !uriPrev.equals(uri)) { @@ -1336,6 +1341,8 @@ String uri = pageInfo.getURI(prefix); if (uri == null) { reader.reset(start); +// Remember the prefix for later error checking +pageInfo.putNonCustomTagPrefix(prefix, reader.mark()); return false; } 1.141 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.140 retrieving revision 1.141 diff -u -r1.140 -r1.141 --- messages.properties 18 Feb 2004 21:22:21 - 1.140 +++ messages.properties 26 Feb 2004 00:19:01 - 1.141 @@ -405,3 +405,4 @@ jsp.error.nested_jsproot=Nested lt;jsp:rootgt; jsp.error.unbalanced.endtag=The end tag \lt;/{0}\ is unbalanced jsp.error.invalid.bean=The value for the useBean class attribute {0} is invalid. +jsp.error.prefix.use_before_dcl=The prefix {0} specified in this tag directive has been previously used by an action in file {1} line {2}. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2004/02/18 13:22:22 Modified:jasper2/src/share/org/apache/jasper EmbeddedServletOptions.java JspC.java Options.java jasper2/src/share/org/apache/jasper/compiler Generator.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Add some intellignece to the compiler for generating code for useBean action. Generate direct instantiation (use new) when possible, use bean.instantiate when bean name is specified, and for the case of invalid bean class, either issue a translation time error (instead of javac error), or generate codes to throw InstantiationException at runtime, depending on a new compiler switch, errorOnUseBeanInvalidClassAttribute(defaulted to true). ;_) Revision ChangesPath 1.9 +26 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/EmbeddedServletOptions.java Index: EmbeddedServletOptions.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/EmbeddedServletOptions.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- EmbeddedServletOptions.java 19 Dec 2003 18:15:51 - 1.8 +++ EmbeddedServletOptions.java 18 Feb 2004 21:22:21 - 1.9 @@ -158,6 +158,8 @@ */ private boolean genStringAsCharArray = false; +private boolean errorOnUseBeanInvalidClassAttribute = true; + /** * I want to see my generated servlets. Which directory are they * in? @@ -334,6 +336,13 @@ return compiler; } +public boolean getErrorOnUseBeanInvalidClassAttribute() { +return errorOnUseBeanInvalidClassAttribute; +} + +public void setErrorOnUseBeanInvalidClassAttribute(boolean b) { +errorOnUseBeanInvalidClassAttribute = b; +} public TldLocationsCache getTldLocationsCache() { return tldLocationsCache; @@ -535,6 +544,20 @@ } else { if (log.isWarnEnabled()) { log.warn(Localizer.getMessage(jsp.warning.genchararray)); +} +} +} + +String errBeanClass = + config.getInitParameter(errorOnUseBeanInvalidClassAttribute); +if (errBeanClass != null) { +if (errBeanClass.equalsIgnoreCase(true)) { +errorOnUseBeanInvalidClassAttribute = true; +} else if (errBeanClass.equalsIgnoreCase(false)) { +errorOnUseBeanInvalidClassAttribute = false; +} else { +if (log.isWarnEnabled()) { +log.warn(Localizer.getMessage(jsp.warning.errBean)); } } } 1.65 +12 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.64 retrieving revision 1.65 diff -u -r1.64 -r1.65 --- JspC.java 21 Jan 2004 15:45:31 - 1.64 +++ JspC.java 18 Feb 2004 21:22:21 - 1.65 @@ -186,6 +186,7 @@ private boolean classDebugInfo = true; private Vector extensions; private Vector pages = new Vector(); +private boolean errorOnUseBeanInvalidClassAttribute = true; /** * The java file encoding. Default @@ -342,6 +343,14 @@ public boolean isXpoweredBy() { return xpoweredBy; +} + +public boolean getErrorOnUseBeanInvalidClassAttribute() { +return errorOnUseBeanInvalidClassAttribute; +} + +public void setErrorOnUseBeanInvalidClassAttribute(boolean b) { +errorOnUseBeanInvalidClassAttribute = b; } public int getTagPoolSize() { 1.22 +10 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options.java Index: Options.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options.java,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- Options.java 5 Feb 2004 23:02:18 - 1.21 +++ Options.java 18 Feb 2004 21:22:21 - 1.22 @@ -77,6 +77,13 @@ public interface Options { /** + * Returns true if Jasper issues a compilation error instead of a runtime + * Instantiation error if the class attribute specified in useBean action + * is invalid. + */ +public boolean getErrorOnUseBeanInvalidClassAttribute(); + +/**
RE: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Mark, For backwards compatibility, I think the restrictions to the TLD location need to follow the spec level used by the web application. Since JSP 1.1 didn't include much in the way of restrictions, I know of some legacy Servlet 2.2/JSP 1.1 webapps that would fail these restrictions if deployed to Tomcat 5 with this change (or Tomcat 4.1 with the port of this change). If you want, I can take a look at fixing this. Cheers, Larry -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Saturday, January 03, 2004 8:57 AM To: [EMAIL PROTECTED] Subject: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/reso urces messages.properties markt 2004/01/03 05:56:39 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix bug 11069. Check that the location of the TLD file is spec compliant. Revision ChangesPath 1.50 +11 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/comp iler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/j asper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- TagLibraryInfoImpl.java 3 Jan 2004 12:17:18 - 1.49 +++ TagLibraryInfoImpl.java 3 Jan 2004 13:56:38 - 1.50 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999 The Apache Software Foundation. All rights + * Copyright (c) 1999,2004 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -200,6 +200,13 @@ } } catch (FileNotFoundException ex) { err.jspError(jsp.error.file.not.found, location[0]); +} + +// Check TLD file location conforms to JSP.7.3.1 +if (!location[0].startsWith(/WEB-INF/) +|| location[0].startsWith(/WEB-INF/classes/) +|| location[0].startsWith(/WEB-INF/lib/)) { + err.jspError(jsp.error.tld.invalid.location, location[0]); } parseTLD(ctxt, location[0], in, null); 1.138 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/reso urces/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/j asper/resources/messages.properties,v retrieving revision 1.137 retrieving revision 1.138 diff -u -r1.137 -r1.138 --- messages.properties 11 Dec 2003 18:24:21 - 1.137 +++ messages.properties 3 Jan 2004 13:56:39 - 1.138 @@ -187,6 +187,7 @@ jsp.error.tld.unable_to_read=Unable to read TLD \{1}\ from JAR file \{0}\: {2} jsp.error.tld.unable_to_get_jar=Unable to get JAR resource \{0}\ containing TLD: {1} jsp.error.tld.missing_jar=Missing JAR resource \{0}\ containing TLD +jsp.error.tld.invalid.location=\{0}\ is not a valid location for a TLD as per JSP specification JSP.7.3.1 jsp.error.webxml_not_found=Could not locate web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-dd path/to/outputDirectory] [-keepgenerated] \ .jsp files - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Larry, AFAIK Tomcat behaviour does not depend on the version of the deployment descriptor schema apart from during the interpretation of the descriptor. On this basis, I am against setting a precedent here. Further, my understanding is that each version of Tomcat is written to support a single defined version of the spec. It is not written to support multiple spec versions. If a version of the spec is not 100% backwards compatible with the previous version I believe that this is a spec issue, not a tomcat issue. It is inevitable that in each new version of the spec there will be a number of areas that will cause problems with migrating applications from a previous version. I would be interested to hear the views of other tomcat developers on this issue. Mark On Tuesday, January 06, 2004 3:27 PM, Larry Isaacs [SMTP:[EMAIL PROTECTED] wrote: Mark, For backwards compatibility, I think the restrictions to the TLD location need to follow the spec level used by the web application. Since JSP 1.1 didn't include much in the way of restrictions, I know of some legacy Servlet 2.2/JSP 1.1 webapps that would fail these restrictions if deployed to Tomcat 5 with this change (or Tomcat 4.1 with the port of this change). If you want, I can take a look at fixing this. Cheers, Larry -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Saturday, January 03, 2004 8:57 AM To: [EMAIL PROTECTED] Subject: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/reso urces messages.properties markt 2004/01/03 05:56:39 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix bug 11069. Check that the location of the TLD file is spec compliant. Revision ChangesPath 1.50 +11 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/comp iler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/j asper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- TagLibraryInfoImpl.java 3 Jan 2004 12:17:18 - 1.49 +++ TagLibraryInfoImpl.java 3 Jan 2004 13:56:38 - 1.50 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999 The Apache Software Foundation. All rights + * Copyright (c) 1999,2004 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -200,6 +200,13 @@ } } catch (FileNotFoundException ex) { err.jspError(jsp.error.file.not.found, location[0]); +} + +// Check TLD file location conforms to JSP.7.3.1 +if (!location[0].startsWith(/WEB-INF/) +|| location[0].startsWith(/WEB-INF/classes/) +|| location[0].startsWith(/WEB-INF/lib/)) { + err.jspError(jsp.error.tld.invalid.location, location[0]); } parseTLD(ctxt, location[0], in, null); 1.138 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/reso urces/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/j asper/resources/messages.properties,v retrieving revision 1.137 retrieving revision 1.138 diff -u -r1.137 -r1.138 --- messages.properties 11 Dec 2003 18:24:21 - 1.137 +++ messages.properties 3 Jan 2004 13:56:39 - 1.138 @@ -187,6 +187,7 @@ jsp.error.tld.unable_to_read=Unable to read TLD \{1}\ from JAR file \{0}\: {2} jsp.error.tld.unable_to_get_jar=Unable to get JAR resource \{0}\ containing TLD: {1} jsp.error.tld.missing_jar=Missing JAR resource \{0}\ containing TLD +jsp.error.tld.invalid.location=\{0}\ is not a valid location for a TLD as per JSP specification JSP.7.3.1 jsp.error.webxml_not_found=Could not locate web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-dd path/to/outputDirectory] [-keepgenerated] \ .jsp files - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Hi Mark, Kin-Man pointed me to this thread and I figured I'd contribute my interpretation. For reference, the JSP 2.0 specification, JSP.7.3.1 states: Tag library descriptor files have names that use the extension .tld, and the extension indicates a tag library descriptor file. When deployed inside a JAR file, the tag library descriptor files must be in the META-INF directory, or a subdirectory of it. When deployed directly into a web application, the tag library descriptor files must always be in the WEB-INF directory, or some subdirectory of it. TLD files should not be placed in /WEB-INF/classes or /WEB-INF/lib. A few notes: 1. The intent of this guideline is that the container can but need not recognize .tld files elsewhere. This is a requirement on the application, not the container. In other words, an application that places its TLD file in any other location is in violation of the specification, and a container can but need not handle that application. 2. The specification does not state that an error occurs if a TLD file appears elsewhere. It leaves it up to the container. 3. The specification says should not be placed in /WEB-INF/classes or /WEB-INF/lib, not must, so the requirement for these two locations is even less strong. So it seems we're free to do what we want in Tomcat. My recommendation would be to either leave it the way it was or log a warning to the user that the application is not spec-compliant. I don't like producing an error here - if prior versions of Tomcat handled this, I see no reason to go out of our way to change this and break applications that once worked. However, it might be appropriate to log a friendly warning to the user since the application is not following the specification. --- Mark Roth, Java Software JSP 2.0 Co-Specification Lead Sun Microsystems, Inc. Mark Thomas wrote: Larry, AFAIK Tomcat behaviour does not depend on the version of the deployment descriptor schema apart from during the interpretation of the descriptor. On this basis, I am against setting a precedent here. Further, my understanding is that each version of Tomcat is written to support a single defined version of the spec. It is not written to support multiple spec versions. If a version of the spec is not 100% backwards compatible with the previous version I believe that this is a spec issue, not a tomcat issue. It is inevitable that in each new version of the spec there will be a number of areas that will cause problems with migrating applications from a previous version. I would be interested to hear the views of other tomcat developers on this issue. Mark On Tuesday, January 06, 2004 3:27 PM, Larry Isaacs [SMTP:[EMAIL PROTECTED] wrote: Mark, For backwards compatibility, I think the restrictions to the TLD location need to follow the spec level used by the web application. Since JSP 1.1 didn't include much in the way of restrictions, I know of some legacy Servlet 2.2/JSP 1.1 webapps that would fail these restrictions if deployed to Tomcat 5 with this change (or Tomcat 4.1 with the port of this change). If you want, I can take a look at fixing this. Cheers, Larry -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Saturday, January 03, 2004 8:57 AM To: [EMAIL PROTECTED] Subject: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/reso urces messages.properties markt 2004/01/03 05:56:39 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix bug 11069. Check that the location of the TLD file is spec compliant. Revision ChangesPath 1.50 +11 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/comp iler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/j asper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- TagLibraryInfoImpl.java3 Jan 2004 12:17:18 - 1.49 +++ TagLibraryInfoImpl.java3 Jan 2004 13:56:38 - 1.50 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999 The Apache Software Foundation. All rights + * Copyright (c) 1999,2004 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -200,6 +200,13 @@ } } catch (FileNotFoundException ex) { err.jspError(jsp.error.file.not.found, location[0]); +} + +// Check TLD file location conforms to JSP.7.3.1 +if (!location[0].startsWith(/WEB-INF/) +||
RE: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Mark, Thanks for the clarification. I must confess I has missed the 'should' and read it as 'must'. I'll revert my previous patch and modify the bugzilla report to an enhancement request to log a warning. Mark On Tuesday, January 06, 2004 11:45 PM, Mark Roth [SMTP:[EMAIL PROTECTED] wrote: Hi Mark, Kin-Man pointed me to this thread and I figured I'd contribute my interpretation. For reference, the JSP 2.0 specification, JSP.7.3.1 states: Tag library descriptor files have names that use the extension .tld, and the extension indicates a tag library descriptor file. When deployed inside a JAR file, the tag library descriptor files must be in the META-INF directory, or a subdirectory of it. When deployed directly into a web application, the tag library descriptor files must always be in the WEB-INF directory, or some subdirectory of it. TLD files should not be placed in /WEB-INF/classes or /WEB-INF/lib. A few notes: 1. The intent of this guideline is that the container can but need not recognize .tld files elsewhere. This is a requirement on the application, not the container. In other words, an application that places its TLD file in any other location is in violation of the specification, and a container can but need not handle that application. 2. The specification does not state that an error occurs if a TLD file appears elsewhere. It leaves it up to the container. 3. The specification says should not be placed in /WEB-INF/classes or /WEB-INF/lib, not must, so the requirement for these two locations is even less strong. So it seems we're free to do what we want in Tomcat. My recommendation would be to either leave it the way it was or log a warning to the user that the application is not spec-compliant. I don't like producing an error here - if prior versions of Tomcat handled this, I see no reason to go out of our way to change this and break applications that once worked. However, it might be appropriate to log a friendly warning to the user since the application is not following the specification. --- Mark Roth, Java Software JSP 2.0 Co-Specification Lead Sun Microsystems, Inc. Mark Thomas wrote: Larry, AFAIK Tomcat behaviour does not depend on the version of the deployment descriptor schema apart from during the interpretation of the descriptor. On this basis, I am against setting a precedent here. Further, my understanding is that each version of Tomcat is written to support a single defined version of the spec. It is not written to support multiple spec versions. If a version of the spec is not 100% backwards compatible with the previous version I believe that this is a spec issue, not a tomcat issue. It is inevitable that in each new version of the spec there will be a number of areas that will cause problems with migrating applications from a previous version. I would be interested to hear the views of other tomcat developers on this issue. Mark On Tuesday, January 06, 2004 3:27 PM, Larry Isaacs [SMTP:[EMAIL PROTECTED] wrote: Mark, For backwards compatibility, I think the restrictions to the TLD location need to follow the spec level used by the web application. Since JSP 1.1 didn't include much in the way of restrictions, I know of some legacy Servlet 2.2/JSP 1.1 webapps that would fail these restrictions if deployed to Tomcat 5 with this change (or Tomcat 4.1 with the port of this change). If you want, I can take a look at fixing this. Cheers, Larry -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Saturday, January 03, 2004 8:57 AM To: [EMAIL PROTECTED] Subject: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/reso urces messages.properties markt 2004/01/03 05:56:39 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix bug 11069. Check that the location of the TLD file is spec compliant. Revision ChangesPath 1.50 +11 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/comp iler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/j asper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- TagLibraryInfoImpl.java 3 Jan 2004 12:17:18 - 1.49 +++ TagLibraryInfoImpl.java 3 Jan 2004 13:56:38 - 1.50 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999 The Apache Software Foundation. All
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
markt 2004/01/06 16:37:47 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Reverting previous patch. Clarification of the spec from Mark Roth has indicated that a warning in the log would be more appropriate. Revision ChangesPath 1.51 +2 -9 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.50 retrieving revision 1.51 diff -u -r1.50 -r1.51 --- TagLibraryInfoImpl.java 3 Jan 2004 13:56:38 - 1.50 +++ TagLibraryInfoImpl.java 7 Jan 2004 00:37:47 - 1.51 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999,2004 The Apache Software Foundation. All rights + * Copyright (c) 1999 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -200,13 +200,6 @@ } } catch (FileNotFoundException ex) { err.jspError(jsp.error.file.not.found, location[0]); -} - -// Check TLD file location conforms to JSP.7.3.1 -if (!location[0].startsWith(/WEB-INF/) -|| location[0].startsWith(/WEB-INF/classes/) -|| location[0].startsWith(/WEB-INF/lib/)) { -err.jspError(jsp.error.tld.invalid.location, location[0]); } parseTLD(ctxt, location[0], in, null); 1.139 +0 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.138 retrieving revision 1.139 diff -u -r1.138 -r1.139 --- messages.properties 3 Jan 2004 13:56:39 - 1.138 +++ messages.properties 7 Jan 2004 00:37:47 - 1.139 @@ -187,7 +187,6 @@ jsp.error.tld.unable_to_read=Unable to read TLD \{1}\ from JAR file \{0}\: {2} jsp.error.tld.unable_to_get_jar=Unable to get JAR resource \{0}\ containing TLD: {1} jsp.error.tld.missing_jar=Missing JAR resource \{0}\ containing TLD -jsp.error.tld.invalid.location=\{0}\ is not a valid location for a TLD as per JSP specification JSP.7.3.1 jsp.error.webxml_not_found=Could not locate web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-dd path/to/outputDirectory] [-keepgenerated] \ .jsp files - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
markt 2004/01/06 16:39:20 Modified:jasper2/src/share/org/apache/jasper/compiler Tag: tomcat_4_branch TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties Log: - Reverting previous patch. Clarification of the spec from Mark Roth has indicated that a warning in the log would be more appropriate. Revision ChangesPath No revision No revision 1.2.2.3 +2 -8 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.2.2.2 retrieving revision 1.2.2.3 diff -u -r1.2.2.2 -r1.2.2.3 --- TagLibraryInfoImpl.java 3 Jan 2004 13:58:39 - 1.2.2.2 +++ TagLibraryInfoImpl.java 7 Jan 2004 00:39:20 - 1.2.2.3 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999,2004 The Apache Software Foundation. All rights + * Copyright (c) 1999 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -179,12 +179,6 @@ } catch (FileNotFoundException ex) { err.jspError(jsp.error.file.not.found, location[0]); } - -// Check TLD file location conforms to JSP.7.3.1 -if (!location[0].startsWith(/WEB-INF/)) { -err.jspError(jsp.error.tld.invalid.location, location[0]); -} - // Now parse the tld. parseTLD(ctxt, location[0], in); } else { No revision No revision 1.9.2.10 +0 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.9.2.9 retrieving revision 1.9.2.10 diff -u -r1.9.2.9 -r1.9.2.10 --- messages.properties 3 Jan 2004 13:58:39 - 1.9.2.9 +++ messages.properties 7 Jan 2004 00:39:20 - 1.9.2.10 @@ -148,7 +148,6 @@ jsp.error.missing_attribute=According to the TLD attribute {0} is mandatory for tag {1} jsp.error.bad_attribute=Attribute {0} invalid according to the specified TLD jsp.error.tld_not_found=Could not locate TLD {0} -jsp.error.tld.invalid.location=\{0}\ is not a valid location for a TLD as per JSP specification JSP.7.3.1 jsp.error.webxml_not_found=Could not locate web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-o path/to/outputDirectory] [-keepgenerated] \ .jsp files - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
No problem, Mark. Thanks, --- Mark Roth, Java Software JSP 2.0 Co-Specification Lead Sun Microsystems, Inc. Mark Thomas wrote: Mark, Thanks for the clarification. I must confess I has missed the 'should' and read it as 'must'. I'll revert my previous patch and modify the bugzilla report to an enhancement request to log a warning. Mark On Tuesday, January 06, 2004 11:45 PM, Mark Roth [SMTP:[EMAIL PROTECTED] wrote: Hi Mark, Kin-Man pointed me to this thread and I figured I'd contribute my interpretation. For reference, the JSP 2.0 specification, JSP.7.3.1 states: Tag library descriptor files have names that use the extension .tld, and the extension indicates a tag library descriptor file. When deployed inside a JAR file, the tag library descriptor files must be in the META-INF directory, or a subdirectory of it. When deployed directly into a web application, the tag library descriptor files must always be in the WEB-INF directory, or some subdirectory of it. TLD files should not be placed in /WEB-INF/classes or /WEB-INF/lib. A few notes: 1. The intent of this guideline is that the container can but need not recognize .tld files elsewhere. This is a requirement on the application, not the container. In other words, an application that places its TLD file in any other location is in violation of the specification, and a container can but need not handle that application. 2. The specification does not state that an error occurs if a TLD file appears elsewhere. It leaves it up to the container. 3. The specification says should not be placed in /WEB-INF/classes or /WEB-INF/lib, not must, so the requirement for these two locations is even less strong. So it seems we're free to do what we want in Tomcat. My recommendation would be to either leave it the way it was or log a warning to the user that the application is not spec-compliant. I don't like producing an error here - if prior versions of Tomcat handled this, I see no reason to go out of our way to change this and break applications that once worked. However, it might be appropriate to log a friendly warning to the user since the application is not following the specification. --- Mark Roth, Java Software JSP 2.0 Co-Specification Lead Sun Microsystems, Inc. Mark Thomas wrote: Larry, AFAIK Tomcat behaviour does not depend on the version of the deployment descriptor schema apart from during the interpretation of the descriptor. On this basis, I am against setting a precedent here. Further, my understanding is that each version of Tomcat is written to support a single defined version of the spec. It is not written to support multiple spec versions. If a version of the spec is not 100% backwards compatible with the previous version I believe that this is a spec issue, not a tomcat issue. It is inevitable that in each new version of the spec there will be a number of areas that will cause problems with migrating applications from a previous version. I would be interested to hear the views of other tomcat developers on this issue. Mark On Tuesday, January 06, 2004 3:27 PM, Larry Isaacs [SMTP:[EMAIL PROTECTED] wrote: Mark, For backwards compatibility, I think the restrictions to the TLD location need to follow the spec level used by the web application. Since JSP 1.1 didn't include much in the way of restrictions, I know of some legacy Servlet 2.2/JSP 1.1 webapps that would fail these restrictions if deployed to Tomcat 5 with this change (or Tomcat 4.1 with the port of this change). If you want, I can take a look at fixing this. Cheers, Larry -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Saturday, January 03, 2004 8:57 AM To: [EMAIL PROTECTED] Subject: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/reso urces messages.properties markt 2004/01/03 05:56:39 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix bug 11069. Check that the location of the TLD file is spec compliant. Revision ChangesPath 1.50 +11 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/comp iler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/j asper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- TagLibraryInfoImpl.java 3 Jan 2004 12:17:18 - 1.49 +++ TagLibraryInfoImpl.java 3 Jan 2004 13:56:38 - 1.50 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999 The Apache Software Foundation. All rights + * Copyright (c) 1999,2004 The Apache Software Foundation. All rights * reserved. * *
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
markt 2004/01/03 05:56:39 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix bug 11069. Check that the location of the TLD file is spec compliant. Revision ChangesPath 1.50 +11 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- TagLibraryInfoImpl.java 3 Jan 2004 12:17:18 - 1.49 +++ TagLibraryInfoImpl.java 3 Jan 2004 13:56:38 - 1.50 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999 The Apache Software Foundation. All rights + * Copyright (c) 1999,2004 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -200,6 +200,13 @@ } } catch (FileNotFoundException ex) { err.jspError(jsp.error.file.not.found, location[0]); +} + +// Check TLD file location conforms to JSP.7.3.1 +if (!location[0].startsWith(/WEB-INF/) +|| location[0].startsWith(/WEB-INF/classes/) +|| location[0].startsWith(/WEB-INF/lib/)) { +err.jspError(jsp.error.tld.invalid.location, location[0]); } parseTLD(ctxt, location[0], in, null); 1.138 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.137 retrieving revision 1.138 diff -u -r1.137 -r1.138 --- messages.properties 11 Dec 2003 18:24:21 - 1.137 +++ messages.properties 3 Jan 2004 13:56:39 - 1.138 @@ -187,6 +187,7 @@ jsp.error.tld.unable_to_read=Unable to read TLD \{1}\ from JAR file \{0}\: {2} jsp.error.tld.unable_to_get_jar=Unable to get JAR resource \{0}\ containing TLD: {1} jsp.error.tld.missing_jar=Missing JAR resource \{0}\ containing TLD +jsp.error.tld.invalid.location=\{0}\ is not a valid location for a TLD as per JSP specification JSP.7.3.1 jsp.error.webxml_not_found=Could not locate web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-dd path/to/outputDirectory] [-keepgenerated] \ .jsp files - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
markt 2004/01/03 05:58:39 Modified:jasper2/src/share/org/apache/jasper/compiler Tag: tomcat_4_branch TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties Log: - Fix bug 11069. Check that the location of the TLD file is spec compliant. - Ported from TC5. - Note that the JSP 1.2 spec is less restrictive than the JSP 2.0 spec. Revision ChangesPath No revision No revision 1.2.2.2 +10 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.2.2.1 retrieving revision 1.2.2.2 diff -u -r1.2.2.1 -r1.2.2.2 --- TagLibraryInfoImpl.java 3 Mar 2003 07:51:18 - 1.2.2.1 +++ TagLibraryInfoImpl.java 3 Jan 2004 13:58:39 - 1.2.2.2 @@ -5,7 +5,7 @@ * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999 The Apache Software Foundation. All rights + * Copyright (c) 1999,2004 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -179,6 +179,12 @@ } catch (FileNotFoundException ex) { err.jspError(jsp.error.file.not.found, location[0]); } + +// Check TLD file location conforms to JSP.7.3.1 +if (!location[0].startsWith(/WEB-INF/)) { +err.jspError(jsp.error.tld.invalid.location, location[0]); +} + // Now parse the tld. parseTLD(ctxt, location[0], in); } else { No revision No revision 1.9.2.9 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.9.2.8 retrieving revision 1.9.2.9 diff -u -r1.9.2.8 -r1.9.2.9 --- messages.properties 27 Mar 2003 00:13:51 - 1.9.2.8 +++ messages.properties 3 Jan 2004 13:58:39 - 1.9.2.9 @@ -148,6 +148,7 @@ jsp.error.missing_attribute=According to the TLD attribute {0} is mandatory for tag {1} jsp.error.bad_attribute=Attribute {0} invalid according to the specified TLD jsp.error.tld_not_found=Could not locate TLD {0} +jsp.error.tld.invalid.location=\{0}\ is not a valid location for a TLD as per JSP specification JSP.7.3.1 jsp.error.webxml_not_found=Could not locate web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-o path/to/outputDirectory] [-keepgenerated] \ .jsp files - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/12/11 10:24:22 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix 25448: Allow white spaces in an empty body for jsp:include Revision ChangesPath 1.86 +4 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.85 retrieving revision 1.86 diff -u -r1.85 -r1.86 --- Parser.java 4 Dec 2003 19:37:58 - 1.85 +++ Parser.java 11 Dec 2003 18:24:21 - 1.86 @@ -1090,6 +1090,7 @@ lt; + tag ); } +reader.skipSpaces(); if( reader.matchesETag( tag ) ) { // EmptyBody return; 1.137 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.136 retrieving revision 1.137 diff -u -r1.136 -r1.137 --- messages.properties 10 Dec 2003 00:24:23 - 1.136 +++ messages.properties 11 Dec 2003 18:24:21 - 1.137 @@ -116,7 +116,7 @@ jsp.error.include.badflush=jsp:include page=\...\ flush=\true\ is the only valid combination in JSP 1.0 jsp.error.attempt_to_clear_flushed_buffer=Error: Attempt to clear a buffer that's already been flushed jsp.error.overflow=Error: JSP Buffer overflow -jsp.error.paramexpected=Expected \param\ tag with \name\ and \value\ attributes +jsp.error.paramexpected=Expecting \jsp:param\ standard action with \name\ and \value\ attributes jsp.error.param.invalidUse=The jsp:param action must not be used outside the jsp:include, jsp:forward, or jsp:params elements jsp.error.params.invalidUse=jsp:params must be a direct child of jsp:plugin jsp.error.fallback.invalidUse=jsp:fallback must be a direct child of jsp:plugin - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/12/09 16:24:23 Modified:jasper2/src/share/org/apache/jasper/compiler TagFileProcessor.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - The spec allows an attribute to be specified in multple tag directives, if they have the same value. It is an error if not. Revision ChangesPath 1.55 +27 -8 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagFileProcessor.java Index: TagFileProcessor.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagFileProcessor.java,v retrieving revision 1.54 retrieving revision 1.55 diff -u -r1.54 -r1.55 --- TagFileProcessor.java 5 Dec 2003 18:33:19 - 1.54 +++ TagFileProcessor.java 10 Dec 2003 00:24:23 - 1.55 @@ -142,6 +142,7 @@ private String smallIcon = null; private String largeIcon = null; private String dynamicAttrsMapName; +private String example = null; private Vector attributeVector; private Vector variableVector; @@ -176,7 +177,7 @@ JspUtil.checkAttributes(Tag directive, n, tagDirectiveAttrs, err); -bodycontent = n.getAttributeValue(body-content); +bodycontent = checkConflict(n, bodycontent, body-content); if (bodycontent != null !bodycontent.equalsIgnoreCase(TagInfo.BODY_CONTENT_EMPTY) !bodycontent.equalsIgnoreCase(TagInfo.BODY_CONTENT_TAG_DEPENDENT) @@ -184,15 +185,33 @@ err.jspError(n, jsp.error.tagdirective.badbodycontent, bodycontent); } -dynamicAttrsMapName = n.getAttributeValue(dynamic-attributes); +dynamicAttrsMapName = checkConflict(n, dynamicAttrsMapName, +dynamic-attributes); if (dynamicAttrsMapName != null) { checkUniqueName(dynamicAttrsMapName, TAG_DYNAMIC, n); } -smallIcon = n.getAttributeValue(small-icon); -largeIcon = n.getAttributeValue(large-icon); -description = n.getAttributeValue(description); -displayName = n.getAttributeValue(display-name); +smallIcon = checkConflict(n, smallIcon, small-icon); +largeIcon = checkConflict(n, largeIcon, large-icon); +description = checkConflict(n, description, description); +displayName = checkConflict(n, displayName, display-name); +example = checkConflict(n, example, example); } + +private String checkConflict(Node n, String oldAttrValue, String attr) +throws JasperException { + +String result = oldAttrValue; +String attrValue = n.getAttributeValue(attr); +if (attrValue != null) { +if (oldAttrValue != null !oldAttrValue.equals(attrValue)) { +err.jspError(n, jsp.error.tag.conflict.attr, attr, + oldAttrValue, attrValue); +} +result = attrValue; +} +return result; +} + public void visit(Node.AttributeDirective n) throws JasperException { 1.136 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.135 retrieving revision 1.136 diff -u -r1.135 -r1.136 --- messages.properties 4 Dec 2003 19:37:58 - 1.135 +++ messages.properties 10 Dec 2003 00:24:23 - 1.136 @@ -67,6 +67,7 @@ jsp.error.page.invalid.iselignored=Page directive: invalid value for isELIgnored jsp.error.tag.invalid.iselignored=Tag directive: invalid value for isELIgnored jsp.error.page.multi.pageencoding=Page directive must not have multiple occurrences of pageencoding +jsp.error.tag.conflict.attr=Tag directive: illegal to have multiple occurrences of the attribute \{0}\ with different values (old: {1}, new: {2}) jsp.error.tag.multi.pageencoding=Tag directive must not have multiple occurrences of pageencoding jsp.error.page.bad_b_and_a_combo=Page directive: Illegal combination of buffer=\none\ autoFlush=\false\ jsp.error.not.impl.taglib=Internal error: Tag extensions not implemented - To unsubscribe, e-mail:
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/12/04 11:37:58 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java TagFileProcessor.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Rewrite error checking when processing tag files to conform with the lastest JSP spec. Check that names declared in any of the following in a translation unit is unique. * name attribute in attribute directive * name-given attribute in variable directive * alias attribute in variable directive * dynamic-attributes attribute in tag directive except that dynamic-attributes attribute of the tag directive can be declared more than once with the same value. Also check that name-from-attribute attributes of variable directives are unique, and that they refer to attribte directives declared in the same translation unit, with the correct attribute values. Revision ChangesPath 1.85 +4 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.84 retrieving revision 1.85 diff -u -r1.84 -r1.85 --- Parser.java 29 Oct 2003 21:53:43 - 1.84 +++ Parser.java 4 Dec 2003 19:37:58 - 1.85 @@ -1942,6 +1942,7 @@ reader.setSingleFile(true); reader.skipUntil(); while (reader.hasMoreInput()) { +start = reader.mark(); if (reader.matches(%--)) { parseComment(parent); } else if (reader.matches(%@)) { 1.53 +114 -93 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagFileProcessor.java Index: TagFileProcessor.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagFileProcessor.java,v retrieving revision 1.52 retrieving revision 1.53 diff -u -r1.52 -r1.53 --- TagFileProcessor.java 2 Sep 2003 21:39:59 - 1.52 +++ TagFileProcessor.java 4 Dec 2003 19:37:58 - 1.53 @@ -68,6 +68,7 @@ import java.net.URLClassLoader; import java.util.Iterator; import java.util.Vector; +import java.util.HashMap; import javax.servlet.jsp.tagext.TagAttributeInfo; import javax.servlet.jsp.tagext.TagExtraInfo; @@ -145,6 +146,19 @@ private Vector attributeVector; private Vector variableVector; +private static final String ATTR_NAME = +the name attribute of the attribute directive; +private static final String VAR_NAME_GIVEN = +the name-given attribute of the variable directive; +private static final String VAR_NAME_FROM = +the name-from-attribute attribute of the variable directive; +private static final String VAR_ALIAS = +the alias attribute of the variable directive; +private static final String TAG_DYNAMIC = +the dynamic-attributes attribute of the tag directive; +private HashMap nameTable = new HashMap(); +private HashMap nameFromTable = new HashMap(); + public TagFileDirectiveVisitor(Compiler compiler, TagLibraryInfo tagLibInfo, String name, @@ -171,6 +185,9 @@ bodycontent); } dynamicAttrsMapName = n.getAttributeValue(dynamic-attributes); +if (dynamicAttrsMapName != null) { +checkUniqueName(dynamicAttrsMapName, TAG_DYNAMIC, n); +} smallIcon = n.getAttributeValue(small-icon); largeIcon = n.getAttributeValue(large-icon); description = n.getAttributeValue(description); @@ -210,9 +227,11 @@ type = java.lang.String; } -attributeVector.addElement( +TagAttributeInfo tagAttributeInfo = new TagAttributeInfo(attrName, required, type, rtexprvalue, - fragment)); + fragment); +attributeVector.addElement(tagAttributeInfo); +checkUniqueName(attrName, ATTR_NAME, n, tagAttributeInfo); } public void visit(Node.VariableDirective n) throws JasperException { @@ -265,6 +284,12 @@ * denotes the name of the variable that is being aliased */ nameGiven = alias; +
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/10/29 13:53:43 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix 10903: Generate errors for unbalanced end tags. Revision ChangesPath 1.84 +33 -5 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.83 retrieving revision 1.84 diff -u -r1.83 -r1.84 --- Parser.java 28 Oct 2003 23:04:11 - 1.83 +++ Parser.java 29 Oct 2003 21:53:43 - 1.84 @@ -1596,7 +1596,8 @@ } else if (reader.matches(jsp:)) { parseStandardAction(parent); } else if (!parseCustomTag(parent)) { - parseTemplateText(parent); +checkUnbalancedEndTag(); +parseTemplateText(parent); } } @@ -1650,7 +1651,8 @@ } else if (reader.matches(jsp:)) { parseStandardAction(parent); } else if (!parseCustomTag(parent)) { - parseTemplateText(parent); +checkUnbalancedEndTag(); +parseTemplateText(parent); } scriptlessCount--; @@ -1712,8 +1714,34 @@ err.jspError( reader.mark(), jsp.error.not.in.template, Custom actions ); } else { +checkUnbalancedEndTag(); parseTemplateText(parent); } +} + +/* + * Flag as error if an unbalanced end tag appears by itself. + */ +private void checkUnbalancedEndTag() throws JasperException { + +if (!reader.matches(/)) { +return; +} + +// Check for unbalanced standard actions +if (reader.matches(jsp:)) { +err.jspError(start, jsp.error.unbalanced.endtag, jsp:); +} + +// Check for unbalanced custom actions +String tagName = reader.parseToken(false); +int i = tagName.indexOf(':'); +if (i == -1 || pageInfo.getURI(tagName.substring(0, i)) == null) { +reader.reset(start); +return; +} + +err.jspError(start, jsp.error.unbalanced.endtag, tagName); } /** 1.134 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.133 retrieving revision 1.134 diff -u -r1.133 -r1.134 --- messages.properties 9 Sep 2003 21:46:22 - 1.133 +++ messages.properties 29 Oct 2003 21:53:43 - 1.134 @@ -402,3 +402,4 @@ jsp.error.data.file.read=Error reading file \{0}\ jsp.error.prefix.refined=Attempt to redefine the prefix {0} to {1}, when it was already defined as {2} in the current scope. jsp.error.nested_jsproot=Nested lt;jsp:rootgt; +jsp.error.unbalanced.endtag=The end tag \lt;/{0}\ is unbalanced - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Date: Mon, 15 Sep 2003 22:57:32 -0700 From: Eric Carmichael [EMAIL PROTECTED] Subject: Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties X-Originating-IP: [64.203.49.21] To: Tomcat Developers List [EMAIL PROTECTED] X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 X-Priority: 3 X-MSMail-priority: Normal X-Originating-Email: [EMAIL PROTECTED] X-OriginalArrivalTime: 16 Sep 2003 05:57:41.0966 (UTC) FILETIME=[7112DEE0:01C37C17] But this also shows that tight coupling between Generator and SmapUtil is flagile and error prone. I think it would be a better design if we decouple these two modules somehow. We could create additional data structure that captures the mapping info for template texts, with Generator its producer and SmapUtil its comsumer. What do you think? I'll think about this more. I thought about this a bit when I was copying the line feed logic from Generator.java to SmapUtil.java to fix the line mappings for template text nodes, because I didn't like duplicating code, but I didn't see an alternative except to move the SMAPping into Generator. How would your producer/consumer approach differ from that? If a data structure that captures mapping info is what's needed, we already have SmapStratum performing that function, so I don't see much difference between having Generator produce a new mapping info data structure and just having Generator produce the SMAP directly. I think keeping an array (in the Template node) of the source line that corresponds to each of the Java line we generate is probably enough. I'll commit some codes today and you'll see what I mean. There are reasons for not doing SMAP generation in Generator. Generator is already the biggest module in Jasper, and I'd like not to make it any more complicated. Also, some codes are generated out of order, in buffers that got appended at the end of generating the main method, so that the mappings cannot be determined when codes are generated. SMAP generation is one of the area that does not got enough test and use. You seem to be one of the few who actually look at it. Are you doing anything with it? -Kin-man BTW, the reason for if (textSize = 3) is for performance optimization. out.write('\n') should be faster than out.write(\n) so it's OK that you move into the if (ctxt.getOptions().genStringAsCharArray()) block, for now; but it should really be applied in all cases. Maybe we can write all out.write()'s in a single line, so that the mapping is not changed? Or we can revisit this later. Yeah, I didn't know if putting if (textSize = 3) outside the if (ctxt.getOptions().genStringAsCharArray()) block was intentional or not, which is why I was hesitant to commit my fix. Thanks for clarifying. I don't have a problem changing the SMAPs as long as we don't break them, so do whatever you think best on the Generator side, and I'll just try to make sure to check for SMAP regressions before the next release. Eric - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Kin-Man Chung wrote: I think keeping an array (in the Template node) of the source line that corresponds to each of the Java line we generate is probably enough. I'll commit some codes today and you'll see what I mean. There are reasons for not doing SMAP generation in Generator. Generator is already the biggest module in Jasper, and I'd like not to make it any more complicated. Also, some codes are generated out of order, in buffers that got appended at the end of generating the main method, so that the mappings cannot be determined when codes are generated. SMAP generation is one of the area that does not got enough test and use. You seem to be one of the few who actually look at it. Are you doing anything with it? Given the number of bug reports which have been filed against that single feature, I can assert this is not the case. You should rewrite your sentence as SMAP generation is one of the area that does not get enough test and use among Tomcat committers ;-) Remy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
I know, I know. I plead guilty as charged. :-) Unfortunately, not having a debugger that uses SMP, it is hard to automate SMAP testing. You pretty much has to manually eyeball the files to verify its correctness. I think netbeans is planning to use tomcat 5 for its next major, so we'll expect more use there. -Kin-man Date: Tue, 16 Sep 2003 19:46:19 +0200 From: Remy Maucherat [EMAIL PROTECTED] Subject: Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties To: Tomcat Developers List [EMAIL PROTECTED] Kin-Man Chung wrote: I think keeping an array (in the Template node) of the source line that corresponds to each of the Java line we generate is probably enough. I'll commit some codes today and you'll see what I mean. There are reasons for not doing SMAP generation in Generator. Generator is already the biggest module in Jasper, and I'd like not to make it any more complicated. Also, some codes are generated out of order, in buffers that got appended at the end of generating the main method, so that the mappings cannot be determined when codes are generated. SMAP generation is one of the area that does not got enough test and use. You seem to be one of the few who actually look at it. Are you doing anything with it? Given the number of bug reports which have been filed against that single feature, I can assert this is not the case. You should rewrite your sentence as SMAP generation is one of the area that does not get enough test and use among Tomcat committers ;-) Remy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
SMAP generation is one of the area that does not got enough test and use. You seem to be one of the few who actually look at it. Are you doing anything with it? Nope. Just trying to make myself useful. Eric - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Unfortunately, not having a debugger that uses SMP, it is hard to automate SMAP testing. You pretty much has to manually eyeball the files to verify its correctness. I think netbeans is planning to use tomcat 5 for its next major, so we'll expect more use there. In the wake of Bugzilla #22277, I wrote some tests that compare the HTML and SMAP produced by various JSPs to a previously established baseline (like I believe ant run-tester does with HTML). Great for picking up on regressions (that's how I caught the small text string problem), but of course the disadvantage is that they also complain about perfectly valid changes, and manually eyeballing the files is the only way to tell the difference. Eric - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Eric Carmichael wrote: This change leads to incorrect SMAPs of TemplateText nodes with 3 or fewer characters, because the if (textSize = 3) logic isn't mirrored in SmapUtil.java. Moving the if (textSize = 3) block into the if (ctxt.getOptions().genStringAsCharArray()) block seems to be a quick way to fix the problem for genStrAsCharArray=false (which, if genStrAsCharArray=true is still experimental, is the only case that really matters), but I haven't followed this thread closely enough to feel confident committing that change. I think you can go ahead with the change. SMAPs were being generated right, so it should fix the problem IMO. Remy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
Ah, I forgot about the fix that you did in SmapUtil to improve line mappings for template texts. Sorry. :-( But this also shows that tight coupling between Generator and SmapUtil is flagile and error prone. I think it would be a better design if we decouple these two modules somehow. We could create additional data structure that captures the mapping info for template texts, with Generator its producer and SmapUtil its comsumer. What do you think? I'll think about this more. BTW, the reason for if (textSize = 3) is for performance optimization. out.write('\n') should be faster than out.write(\n) so it's OK that you move into the if (ctxt.getOptions().genStringAsCharArray()) block, for now; but it should really be applied in all cases. Maybe we can write all out.write()'s in a single line, so that the mapping is not changed? Or we can revisit this later. -Kin-man Date: Sun, 14 Sep 2003 21:44:56 -0700 From: Eric Carmichael [EMAIL PROTECTED] Subject: Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties X-Originating-IP: [64.203.49.21] To: Tomcat Developers List [EMAIL PROTECTED] X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 X-Priority: 3 X-MSMail-priority: Normal X-Originating-Email: [EMAIL PROTECTED] X-OriginalArrivalTime: 15 Sep 2003 04:45:06.0060 (UTC) FILETIME=[22569CC0:01C37B44] This change leads to incorrect SMAPs of TemplateText nodes with 3 or fewer characters, because the if (textSize = 3) logic isn't mirrored in SmapUtil.java. Moving the if (textSize = 3) block into the if (ctxt.getOptions().genStringAsCharArray()) block seems to be a quick way to fix the problem for genStrAsCharArray=false (which, if genStrAsCharArray=true is still experimental, is the only case that really matters), but I haven't followed this thread closely enough to feel confident committing that change. Eric - Original Message - From: [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, September 09, 2003 2:46 PM Subject: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties kinman 2003/09/09 14:46:22 Modified:jasper2/src/share/org/apache/jasper EmbeddedServletOptions.java JspC.java Options.java jasper2/src/share/org/apache/jasper/compiler Generator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Add an compilation option to generate writing char arrays instead of Strings for template texts. OK, I'm committing the code experimentally. Please try it out and see if it improves performance. To turn it on, set the initParam genStrAsCharArray to true. Revision ChangesPath 1.6 +28 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/EmbeddedServletOpt ions.java Index: EmbeddedServletOptions.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Embedded ServletOptions.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- EmbeddedServletOptions.java 6 Aug 2003 20:04:05 - 1.5 +++ EmbeddedServletOptions.java 9 Sep 2003 21:46:22 - 1.6 @@ -157,6 +157,11 @@ private boolean isSmapDumped = false; /** + * Are Text strings to be generated as char arrays? + */ +private boolean genStringAsCharArray = false; + +/** * I want to see my generated servlets. Which directory are they * in? */ @@ -290,6 +295,13 @@ } /** + * 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. */ public String getIeClassId() { @@ -513,6 +525,19 @@ } else { if (log.isWarnEnabled()) { log.warn(Localizer.getMessage(jsp.warning.dumpSmap)); +} +} +} + +String genCharArray = config.getInitParameter(genStrAsCharArray); +if (genCharArray != null) { +if (genCharArray.equalsIgnoreCase(true)) { +genStringAsCharArray = true; +} else if (genCharArray.equalsIgnoreCase(false)) { +genStringAsCharArray = false; +} else { +if (log.isWarnEnabled()) { + log.warn(Localizer.getMessage(jsp.warning.genchararray)); } } } 1.60 +10 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
But this also shows that tight coupling between Generator and SmapUtil is flagile and error prone. I think it would be a better design if we decouple these two modules somehow. We could create additional data structure that captures the mapping info for template texts, with Generator its producer and SmapUtil its comsumer. What do you think? I'll think about this more. I thought about this a bit when I was copying the line feed logic from Generator.java to SmapUtil.java to fix the line mappings for template text nodes, because I didn't like duplicating code, but I didn't see an alternative except to move the SMAPping into Generator. How would your producer/consumer approach differ from that? If a data structure that captures mapping info is what's needed, we already have SmapStratum performing that function, so I don't see much difference between having Generator produce a new mapping info data structure and just having Generator produce the SMAP directly. BTW, the reason for if (textSize = 3) is for performance optimization. out.write('\n') should be faster than out.write(\n) so it's OK that you move into the if (ctxt.getOptions().genStringAsCharArray()) block, for now; but it should really be applied in all cases. Maybe we can write all out.write()'s in a single line, so that the mapping is not changed? Or we can revisit this later. Yeah, I didn't know if putting if (textSize = 3) outside the if (ctxt.getOptions().genStringAsCharArray()) block was intentional or not, which is why I was hesitant to commit my fix. Thanks for clarifying. I don't have a problem changing the SMAPs as long as we don't break them, so do whatever you think best on the Generator side, and I'll just try to make sure to check for SMAP regressions before the next release. Eric - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
This change leads to incorrect SMAPs of TemplateText nodes with 3 or fewer characters, because the if (textSize = 3) logic isn't mirrored in SmapUtil.java. Moving the if (textSize = 3) block into the if (ctxt.getOptions().genStringAsCharArray()) block seems to be a quick way to fix the problem for genStrAsCharArray=false (which, if genStrAsCharArray=true is still experimental, is the only case that really matters), but I haven't followed this thread closely enough to feel confident committing that change. Eric - Original Message - From: [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, September 09, 2003 2:46 PM Subject: cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties kinman 2003/09/09 14:46:22 Modified:jasper2/src/share/org/apache/jasper EmbeddedServletOptions.java JspC.java Options.java jasper2/src/share/org/apache/jasper/compiler Generator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Add an compilation option to generate writing char arrays instead of Strings for template texts. OK, I'm committing the code experimentally. Please try it out and see if it improves performance. To turn it on, set the initParam genStrAsCharArray to true. Revision ChangesPath 1.6 +28 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/EmbeddedServletOpt ions.java Index: EmbeddedServletOptions.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Embedded ServletOptions.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- EmbeddedServletOptions.java 6 Aug 2003 20:04:05 - 1.5 +++ EmbeddedServletOptions.java 9 Sep 2003 21:46:22 - 1.6 @@ -157,6 +157,11 @@ private boolean isSmapDumped = false; /** + * Are Text strings to be generated as char arrays? + */ +private boolean genStringAsCharArray = false; + +/** * I want to see my generated servlets. Which directory are they * in? */ @@ -290,6 +295,13 @@ } /** + * 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. */ public String getIeClassId() { @@ -513,6 +525,19 @@ } else { if (log.isWarnEnabled()) { log.warn(Localizer.getMessage(jsp.warning.dumpSmap)); +} +} +} + +String genCharArray = config.getInitParameter(genStrAsCharArray); +if (genCharArray != null) { +if (genCharArray.equalsIgnoreCase(true)) { +genStringAsCharArray = true; +} else if (genCharArray.equalsIgnoreCase(false)) { +genStringAsCharArray = false; +} else { +if (log.isWarnEnabled()) { + log.warn(Localizer.getMessage(jsp.warning.genchararray)); } } } 1.60 +10 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.jav a,v retrieving revision 1.59 retrieving revision 1.60 diff -u -r1.59 -r1.60 --- JspC.java 2 Sep 2003 21:40:00 - 1.59 +++ JspC.java 9 Sep 2003 21:46:22 - 1.60 @@ -408,6 +408,13 @@ return false; } +/** + * Are Text strings to be generated as char arrays? + */ +public boolean genStringAsCharArray() { +return false; +} + public String getIeClassId() { return ieClassId; } 1.18 +8 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options.java Index: Options.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options. java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- Options.java 2 Sep 2003 21:40:00 - 1.17 +++ Options.java 9 Sep 2003 21:46:22 - 1.18 @@ -191,4 +191,9 @@ * Obtain a Tag Plugin Manager */ public TagPluginManager getTagPluginManager(); + +/** + * Are Text strings to be generated as char arrays? + */ +public boolean genStringAsCharArray(); } 1.205 +91 -11 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator .java Index
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/08/25 15:25:55 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Ensure that jsp:root is root element in JSP document Revision ChangesPath 1.67 +9 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.66 retrieving revision 1.67 diff -u -r1.66 -r1.67 --- JspDocumentParser.java21 Aug 2003 23:10:49 - 1.66 +++ JspDocumentParser.java25 Aug 2003 22:25:54 - 1.67 @@ -605,7 +605,12 @@ Node node = null; if (localName.equals(ROOT_ACTION)) { - node = new Node.JspRoot(qName, nonTaglibAttrs, nonTaglibXmlnsAttrs, +if (!(current instanceof Node.Root)) { +throw new SAXParseException( +Localizer.getMessage(jsp.error.nested_jsproot), +locator); +} +node = new Node.JspRoot(qName, nonTaglibAttrs, nonTaglibXmlnsAttrs, taglibAttrs, start, current); if (isTop) { pageInfo.setHasJspRoot(true); 1.132 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.131 retrieving revision 1.132 diff -u -r1.131 -r1.132 --- messages.properties 15 Aug 2003 00:06:09 - 1.131 +++ messages.properties 25 Aug 2003 22:25:55 - 1.132 @@ -399,3 +399,4 @@ jsp.error.text.has_subelement=lt;jsp:textgt; must not have any subelements jsp.error.data.file.read=Error reading file \{0}\ jsp.error.prefix.refined=Attempt to redefine the prefix {0} to {1}, when it was already defined as {2} in the current scope. +jsp.error.nested_jsproot=Nested lt;jsp:rootgt; - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/08/12 11:36:46 Modified:jasper2/src/share/org/apache/jasper JspC.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Replaced error message with localizable error code Revision ChangesPath 1.54 +5 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.53 retrieving revision 1.54 diff -u -r1.53 -r1.54 --- JspC.java 9 Aug 2003 19:03:15 - 1.53 +++ JspC.java 12 Aug 2003 18:36:46 - 1.54 @@ -810,7 +810,8 @@ try { if (uriRoot == null) { if( pages.size() == 0 ) { - throw new JasperException(No uriRoot or files); + throw new JasperException( +Localizer.getMessage(jsp.error.jspc.missingTarget)); } String firstJsp=(String)pages.elementAt( 0 ); File firstJspF = new File( firstJsp ); 1.128 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.127 retrieving revision 1.128 diff -u -r1.127 -r1.128 --- messages.properties 11 Aug 2003 21:11:07 - 1.127 +++ messages.properties 12 Aug 2003 18:36:46 - 1.128 @@ -200,6 +200,7 @@ jsp.warning.compiler.class.notfound=Specified compiler plugin class {0} not found. Will default to Sun Java Compiler. jsp.warning.compiler.path.notfound=Specified compiler path {0} not found. Will default to system PATH. jsp.error.jspc.uriroot_not_dir=The -uriroot option must specify a pre-existing directory +jsp.error.jspc.missingTarget=Missing target: Must specify -webapp or -uriroot, or one or more JSP pages jsp.error.jspc.no_uriroot=The uriroot is not specified and cannot be located with the specified JSP file(s) jspc.implicit.uriRoot=uriRoot implicitly set to {0} jspc.usage=Usage: jspc options [--] jsp files\n\ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/08/11 14:11:08 Modified:jasper2/src/share/org/apache/jasper/compiler ErrorDispatcher.java JspDocumentParser.java Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Allow a taglib to be defined more than once in taglib directives, even in statically included files. - Remove need for keeping a Stack for prefix bookkeeping. Revision ChangesPath 1.12 +24 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ErrorDispatcher.java Index: ErrorDispatcher.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ErrorDispatcher.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- ErrorDispatcher.java 5 Feb 2003 23:39:20 - 1.11 +++ ErrorDispatcher.java 11 Aug 2003 21:11:07 - 1.12 @@ -244,7 +244,28 @@ * @param errCode Error code * @param arg1 First argument for parametric replacement * @param arg2 Second argument for parametric replacement + * @param arg3 Third argument for parametric replacement */ + +public void jspError(Mark where, String errCode, String arg1, String arg2, + String arg3) +throws JasperException { +dispatch(where, errCode, new Object[] {arg1, arg2, arg3}, null); +} + +/* + * Dispatches the given JSP parse error to the configured error handler. + * + * The given error code is localized. If it is not found in the + * resource bundle for localized error messages, it is used as the error + * message. + * + * @param n Node that caused the error + * @param errCode Error code + * @param arg1 First argument for parametric replacement + * @param arg2 Second argument for parametric replacement + */ + public void jspError(Node n, String errCode, String arg1, String arg2) throws JasperException { dispatch(n.getStart(), errCode, new Object[] {arg1, arg2}, null); 1.64 +5 -10 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.63 retrieving revision 1.64 diff -u -r1.63 -r1.64 --- JspDocumentParser.java9 Aug 2003 14:55:46 - 1.63 +++ JspDocumentParser.java11 Aug 2003 21:11:07 - 1.64 @@ -109,7 +109,6 @@ private boolean isTagFile; private boolean directivesOnly; private boolean isTop; -private LinkedList prefixMapLinkedList; /* * Constructor @@ -128,7 +127,6 @@ this.isTagFile = isTagFile; this.directivesOnly = directivesOnly; this.isTop = true; -this.prefixMapLinkedList = new LinkedList();; } /* @@ -560,9 +558,8 @@ if (taglibInfo != null) { pageInfo.addTaglib(uri, taglibInfo); pageInfo.pushPrefixMapping(prefix, uri); -prefixMapLinkedList.addLast(new Boolean(true)); } else { -prefixMapLinkedList.addLast(new Boolean(false)); +pageInfo.pushPrefixMapping(prefix, null); } } @@ -570,9 +567,7 @@ * Receives notification of the end of a Namespace mapping. */ public void endPrefixMapping(String prefix) throws SAXException { -if (((Boolean) prefixMapLinkedList.removeFirst()).booleanValue()) { -pageInfo.popPrefixMapping(prefix); -} +pageInfo.popPrefixMapping(prefix); } 1.79 +8 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.78 retrieving revision 1.79 diff -u -r1.78 -r1.79 --- Parser.java 9 Aug 2003 19:18:22 - 1.78 +++ Parser.java 11 Aug 2003 21:11:07 - 1.79 @@ -451,6 +451,11 @@ String prefix = attrs.getValue(prefix); if (prefix != null) { if (uri != null) { + String uriPrev = pageInfo.getURI(prefix); + if (uriPrev != null !uriPrev.equals(uri)) { + err.jspError(reader.mark(), jsp.error.prefix.refined, + prefix, uri,
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/08/12 12:11:45 Modified:jasper2/src/share/org/apache/jasper JspC.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Added -classpath option to JspC Revision ChangesPath 1.55 +6 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.54 retrieving revision 1.55 diff -u -r1.54 -r1.55 --- JspC.java 12 Aug 2003 18:36:46 - 1.54 +++ JspC.java 12 Aug 2003 19:11:45 - 1.55 @@ -148,6 +148,7 @@ private static final String SWITCH_WEBAPP_XML = -webxml; private static final String SWITCH_MAPPED = -mapped; private static final String SWITCH_XPOWERED_BY = -xpoweredBy; +private static final String SWITCH_CLASSPATH = -classpath; private static final String SWITCH_DIE = -die; private static final String SHOW_SUCCESS =-s; private static final String LIST_ERRORS = -l; @@ -288,6 +289,8 @@ mappedFile = true; } else if (tok.equals(SWITCH_XPOWERED_BY)) { xpoweredBy = true; +} else if (tok.equals(SWITCH_CLASSPATH)) { +setClassPath(nextArg()); } else if (tok.startsWith(SWITCH_DIE)) { try { dieLevel = Integer.parseInt( 1.129 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.128 retrieving revision 1.129 diff -u -r1.128 -r1.129 --- messages.properties 12 Aug 2003 18:36:46 - 1.128 +++ messages.properties 12 Aug 2003 19:11:45 - 1.129 @@ -226,6 +226,7 @@ \-webinc file Creates a partial servlet mappings in the file\n\ \-webxml file Creates a complete web.xml in the file\n\ \-ieplugin clsid Java Plugin classid for Internet Explorer\n\ +\-classpath path Overrides java.class.path system property\n\ \-xpoweredByAdd X-Powered-By response header\n\ jspc.webxml.header=?xml version=1.0 encoding=ISO-8859-1?\n\ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/08/14 14:16:52 Modified:jasper2/src/share/org/apache/jasper/compiler ErrorDispatcher.java Generator.java PageInfo.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Add attibutes doctype-root-element, doctype-system and doctype-public to jsp:output for outputing a DOCTYPE declartion in xml documents, per latest spec change. Revision ChangesPath 1.13 +24 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ErrorDispatcher.java Index: ErrorDispatcher.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ErrorDispatcher.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- ErrorDispatcher.java 11 Aug 2003 21:11:07 - 1.12 +++ ErrorDispatcher.java 14 Aug 2003 21:16:52 - 1.13 @@ -240,7 +240,7 @@ * resource bundle for localized error messages, it is used as the error * message. * - * @param n Node that caused the error + * @param where Error location * @param errCode Error code * @param arg1 First argument for parametric replacement * @param arg2 Second argument for parametric replacement @@ -269,6 +269,26 @@ public void jspError(Node n, String errCode, String arg1, String arg2) throws JasperException { dispatch(n.getStart(), errCode, new Object[] {arg1, arg2}, null); +} + +/* + * Dispatches the given JSP parse error to the configured error handler. + * + * The given error code is localized. If it is not found in the + * resource bundle for localized error messages, it is used as the error + * message. + * + * @param n Node that caused the error + * @param errCode Error code + * @param arg1 First argument for parametric replacement + * @param arg2 Second argument for parametric replacement + * @param arg3 Third argument for parametric replacement + */ + +public void jspError(Node n, String errCode, String arg1, String arg2, + String arg3) + throws JasperException { + dispatch(n.getStart(), errCode, new Object[] {arg1, arg2, arg3}, null); } /* 1.195 +40 -11 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.194 retrieving revision 1.195 diff -u -r1.194 -r1.195 --- Generator.java9 Aug 2003 19:19:37 - 1.194 +++ Generator.java14 Aug 2003 21:16:52 - 1.195 @@ -594,14 +594,18 @@ } /** - * Generates an XML declaration, under the following conditions: - * - * - 'omit-xml-declaration' attribute of jsp:output action is set to - * no or false - * - JSP document without a jsp:root + * Generates an XML Prolog, which includes an XML declaration and + * an XML doctype declaration. */ -private void generateXmlDeclaration(Node.Nodes page) { +private void generateXmlProlog(Node.Nodes page) { + /* + * An XML declaration is generated under the following conditions: + * + * - 'omit-xml-declaration' attribute of jsp:output action is set to + * no or false + * - JSP document without a jsp:root + */ String omitXmlDecl = pageInfo.getOmitXmlDecl(); if ((omitXmlDecl != null !JspUtil.booleanValue(omitXmlDecl)) || (omitXmlDecl == null page.getRoot().isXmlSyntax() @@ -611,6 +615,31 @@ out.printil(out.write(\?xml version=\\\1.0\\\ encoding=\\\ + charSet + \\\?\\n\);); } + + /* + * Output a DOCTYPE declaration if the doctype-root-element appears. + * If doctype-public appears: + * !DOCTYPE name PUBLIC doctypePublic doctypeSystem + * else + * !DOCTYPE name SYSTEM doctypeSystem + */ + + String doctypeName = pageInfo.getDoctypeName(); + if (doctypeName != null) { + String doctypePublic = pageInfo.getDoctypePublic(); + String doctypeSystem = pageInfo.getDoctypeSystem(); + out.printin(out.write(\!DOCTYPE ); + out.print(doctypeName); + if (doctypePublic == null) { + out.print( SYSTEM \\\); + } else { + out.print( PUBLIC \\\); +
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/08/14 17:06:10 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Spec has been changed to allow for include-prelude and include-coda in jsp-config. Revision ChangesPath 1.65 +35 -17 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.64 retrieving revision 1.65 diff -u -r1.64 -r1.65 --- JspDocumentParser.java11 Aug 2003 21:11:07 - 1.64 +++ JspDocumentParser.java15 Aug 2003 00:06:09 - 1.65 @@ -149,18 +149,6 @@ inStream, isTagFile, directivesOnly); - - // It's an error to have a prelude or a coda associated with - // a JSP document - if (!jspDocParser.pageInfo.getIncludePrelude().isEmpty()) { - String file = (String) jspDocParser.pageInfo.getIncludePrelude().get(0); - jspDocParser.err.jspError(jsp.error.prelude.xml, path, file); - } - if (!jspDocParser.pageInfo.getIncludeCoda().isEmpty()) { - String file = (String) jspDocParser.pageInfo.getIncludeCoda().get(0); - jspDocParser.err.jspError(jsp.error.coda.xml, path, file); - } - Node.Nodes pageNodes = null; try { @@ -171,8 +159,10 @@ dummyRoot.setJspConfigPageEncoding(jspConfigPageEnc); dummyRoot.setIsEncodingSpecifiedInProlog(isEncodingSpecifiedInProlog); jspDocParser.current = dummyRoot; - - if (parent != null) { + if (parent == null) { + jspDocParser.addInclude(dummyRoot, + jspDocParser.pageInfo.getIncludePrelude()); + } else { jspDocParser.isTop = false; } @@ -192,6 +182,11 @@ // Parse the input saxParser.parse(jspDocParser.inputSource, jspDocParser); + if (parent == null) { + jspDocParser.addInclude(dummyRoot, + jspDocParser.pageInfo.getIncludeCoda()); + } + // Create Node.Nodes from dummy root pageNodes = new Node.Nodes(dummyRoot); @@ -202,6 +197,29 @@ } return pageNodes; +} + +/* + * Processes the given list of included files. + * + * This is used to implement the include-prelude and include-coda + * subelements of the jsp-config element in web.xml + */ +private void addInclude(Node parent, List files) throws SAXException { + if (files != null) { + Iterator iter = files.iterator(); + while (iter.hasNext()) { + String file = (String) iter.next(); + AttributesImpl attrs = new AttributesImpl(); + attrs.addAttribute(, file, file, CDATA, file); + + // Create a dummy Include directive node + Node includeDir = new Node.IncludeDirective(attrs, +null, // XXX +parent); + processIncludeDirective(file, includeDir); + } + } } /* 1.131 +1 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.130 retrieving revision 1.131 diff -u -r1.130 -r1.131 --- messages.properties 14 Aug 2003 21:16:52 - 1.130 +++ messages.properties 15 Aug 2003 00:06:09 - 1.131 @@ -388,8 +388,6 @@ jsp.error.variable.either.name=Either name-given or name-from-attribute attribute must be specified in a variable directive jsp.error.variable.both.name=Cannot specified both name-given or name-from-attribute attributes in a variable directive jsp.error.variable.alias=Both or none of the name-from-attribute and alias attributes can be specified in a variable directive -jsp.error.prelude.xml=The JSP document {0} has a prelude ({1}) associated with it -jsp.error.coda.xml=The JSP document {0} has a coda ({1}) associated with it jsp.error.attribute.null_name=Null attribute name
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/07/22 14:04:47 Modified:jasper2/src/share/org/apache/jasper JspC.java Options.java EmbeddedServletOptions.java jasper2/src/share/org/apache/jasper/compiler Generator.java jasper2/src/share/org/apache/jasper/servlet JspServlet.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Moved X-Powered-By property for servlets from Host/Context to CoyoteConnector. If property is set to TRUE, CoyoteAdapter adds X-Powered-By response header with value Servlet/2,4. Turned X-Powered-By property for JSPs into a configurable Jasper compilation option. If set to TRUE, the generated servlet will add X-Powered-By response header with value JSP/2.0. Revision ChangesPath 1.49 +11 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- JspC.java 6 Jul 2003 22:56:54 - 1.48 +++ JspC.java 22 Jul 2003 21:04:44 - 1.49 @@ -143,6 +143,7 @@ private static final String SWITCH_WEBAPP_INC = -webinc; private static final String SWITCH_WEBAPP_XML = -webxml; private static final String SWITCH_MAPPED = -mapped; +private static final String SWITCH_XPOWERED_BY = -xpoweredBy; private static final String SWITCH_DIE = -die; private static final String SHOW_SUCCESS =-s; private static final String LIST_ERRORS = -l; @@ -163,6 +164,7 @@ private String classPath = null; private URLClassLoader loader = null; private boolean largeFile = false; +private boolean xpoweredBy; private boolean mappedFile = false; private File scratchDir; private String ieClassId = DEFAULT_IE_CLASS_ID; @@ -280,6 +282,8 @@ } } else if (tok.equals(SWITCH_MAPPED)) { mappedFile = true; +} else if (tok.equals(SWITCH_XPOWERED_BY)) { +xpoweredBy = true; } else if (tok.startsWith(SWITCH_DIE)) { try { dieLevel = Integer.parseInt( @@ -322,6 +326,10 @@ public boolean isPoolingEnabled() { return true; +} + +public boolean isXpoweredBy() { +return xpoweredBy; } public int getTagPoolSize() { 1.15 +8 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options.java Index: Options.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Options.java,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- Options.java 26 Apr 2003 01:15:24 - 1.14 +++ Options.java 22 Jul 2003 21:04:45 - 1.15 @@ -191,6 +191,11 @@ public JspConfig getJspConfig(); /** + * Is generation of X-Powered-By response header enabled/disabled? + */ +public boolean isXpoweredBy(); + +/** * Obtain a Tag Plugin Manager */ public TagPluginManager getTagPluginManager(); 1.4 +31 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/EmbeddedServletOptions.java Index: EmbeddedServletOptions.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/EmbeddedServletOptions.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- EmbeddedServletOptions.java 26 Apr 2003 01:15:24 - 1.3 +++ EmbeddedServletOptions.java 22 Jul 2003 21:04:45 - 1.4 @@ -205,6 +205,11 @@ */ private String javaEncoding = UTF8; +/* + * Is generation of X-Powered-By response header enabled/disabled? + */ +private boolean xpoweredBy; + public String getProperty(String name ) { return settings.getProperty( name ); } @@ -319,6 +324,13 @@ } /** + * Is generation of X-Powered-By response header enabled/disabled? + */ +public boolean isXpoweredBy() { +return xpoweredBy; +} + +/** * Compiler to use. */ public String getCompiler() { @@ -589,6 +601,22 @@ } else { if (log.isWarnEnabled()) { log.warn(Localizer.getMessage(jsp.warning.fork)); + } + } +} + +/* + * X-Powered-By + */ +String xpoweredBy = config.getInitParameter(xpoweredBy); +if (xpoweredBy !=
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
luehe 2003/07/21 14:52:51 Modified:jasper2/src/share/org/apache/jasper/compiler Generator.java JspDocumentParser.java PageInfo.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Forgive duplicate attribute values on static include Revision ChangesPath 1.191 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.190 retrieving revision 1.191 diff -u -r1.190 -r1.191 --- Generator.java21 Jul 2003 05:34:55 - 1.190 +++ Generator.java21 Jul 2003 21:52:51 - 1.191 @@ -539,7 +539,7 @@ if (pageInfo.isSession()) out.printil(HttpSession session = null;); - if (pageInfo.isIsErrorPage()) { + if (pageInfo.isErrorPage()) { out.printil(Throwable exception = org.apache.jasper.runtime.JspRuntimeLibrary.getThrowable(request);); } 1.61 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.60 retrieving revision 1.61 diff -u -r1.60 -r1.61 --- JspDocumentParser.java21 Jul 2003 20:44:20 - 1.60 +++ JspDocumentParser.java21 Jul 2003 21:52:51 - 1.61 @@ -557,7 +557,7 @@ */ public void startPrefixMapping(String prefix, String uri) throws SAXException { - // XXX + // XXX } /* 1.31 +257 -84 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java Index: PageInfo.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- PageInfo.java 21 Jul 2003 20:44:20 - 1.30 +++ PageInfo.java 21 Jul 2003 21:52:51 - 1.31 @@ -63,6 +63,7 @@ import java.util.*; import org.apache.jasper.Constants; +import org.apache.jasper.JasperException; import javax.servlet.jsp.tagext.TagLibraryInfo; /** @@ -83,17 +84,24 @@ private String language = java; private String xtends = Constants.JSP_SERVLET_BASE; private String contentType = null; -private boolean session = true; +private String session; +private boolean isSession = true; +private String bufferValue; private int buffer = 8*1024; // XXX confirm -private boolean autoFlush = true; -private boolean threadSafe = true; +private String autoFlush; +private boolean isAutoFlush = true; +private String isThreadSafeValue; +private boolean isThreadSafe = true; +private String isErrorPageValue; private boolean isErrorPage = false; private String errorPage = null; +private String info; private int maxTagNesting = 0; private boolean scriptless = false; private boolean scriptingInvalid = false; -private boolean elIgnored = false; +private String isELIgnoredValue; +private boolean isELIgnored = false; private boolean elIgnoredSpecified = false; private String omitXmlDecl = null; @@ -170,78 +178,6 @@ return beanRepository; } -public String getLanguage() { - return language; -} - -public void setLanguage(String language) { - this.language = language; -} - -public String getExtends() { - return xtends; -} - -public void setExtends(String xtends) { - this.xtends = xtends; -} - -public String getContentType() { - return contentType; -} - -public void setContentType(String contentType) { - this.contentType = contentType; -} - -public String getErrorPage() { - return errorPage; -} - -public void setErrorPage(String errorPage) { - this.errorPage = errorPage; -} - -public int getBuffer() { - return buffer; -} - -public void setBuffer(int buffer) { - this.buffer = buffer; -} - -public boolean isSession() { - return session; -} - -public void setSession(boolean session) { - this.session = session; -} - -public
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/07/21 17:46:36 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed typos and formatting of jspc help message Revision ChangesPath 1.125 +19 -19 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.124 retrieving revision 1.125 diff -u -r1.124 -r1.125 --- messages.properties 21 Jul 2003 21:52:51 - 1.124 +++ messages.properties 22 Jul 2003 00:46:36 - 1.125 @@ -203,26 +203,26 @@ jspc.implicit.uriRoot=uriRoot implicitly set to {0} jspc.usage=Usage: jspc options [--] jsp files\n\ where jsp files is\n\ -\-webapp dir A directory containing a web-app, all jsp pages\n\ -\ will recursivly be parsed\n\ +\-webapp dir A directory containing a web-app, whose JSP pages\n\ +\ will be processed recursively\n\ or any number of\n\ -\file A file to be parsed as a jsp page\n\ +\file A file to be parsed as a JSP page\n\ where options include:\n\ -\-help Print this help message\n\ -\-v Verbose mode\n\ -\-d dirOutput Directory (default -Djava.io.tmpdir)\n\ -\-l Outputs the name of the JSP page upon failure\n\ -\-s Outputs the name of the JSP page upon success\n\ -\-p name Name of target package (default org.apache.jsp).\n\ -\-c name Name of target class name (only applies to first JSP page).\n\ -\-mapped Generates separate write() calls for each HTML line in the JSP.\n\ -\-die[#] Generates an error return code (#) on fatal errors (default 1).\n\ -\-uribase dir The uri directory compilations should be relative to\n\ -\(default /).\n\ -\-uriroot dir Same as -webapps.\n\ -\-compileCompiles generated servlets.\n\ -\-webinc file Creates a partial servlet mappings in the file.\n\ -\-webxml file Creates a complete web.xml in the file.\n\ +\-help Print this help message\n\ +\-v Verbose mode\n\ +\-d dir Output Directory (default -Djava.io.tmpdir)\n\ +\-l Outputs the name of the JSP page upon failure\n\ +\-s Outputs the name of the JSP page upon success\n\ +\-p name Name of target package (default org.apache.jsp)\n\ +\-c name Name of target class name (only applies to first JSP page)\n\ +\-mappedGenerates separate write() calls for each HTML line in the JSP\n\ +\-die[#]Generates an error return code (#) on fatal errors (default 1)\n\ +\-uribase dir The uri directory compilations should be relative to\n\ +\ (default /)\n\ +\-uriroot dir Same as -webapp\n\ +\-compile Compiles generated servlets\n\ +\-webinc file Creates a partial servlet mappings in the file\n\ +\-webxml file Creates a complete web.xml in the file\n\ \-ieplugin clsid Java Plugin classid for Internet Explorer\n\ jspc.webxml.header=?xml version=1.0 encoding=ISO-8859-1?\n\ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
remm2003/07/08 15:53:38 Modified:jasper2/src/share/org/apache/jasper/compiler DefaultErrorHandler.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Add decent error message when JAVAC isn't found (I think this was a frequent RFE). Revision ChangesPath 1.7 +22 -14 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/DefaultErrorHandler.java Index: DefaultErrorHandler.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/DefaultErrorHandler.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- DefaultErrorHandler.java 22 Jan 2003 20:08:24 - 1.6 +++ DefaultErrorHandler.java 8 Jul 2003 22:53:38 - 1.7 @@ -105,17 +105,25 @@ Object[] args = null; StringBuffer buf = new StringBuffer(); - for (int i=0; idetails.length; i++) { - args = new Object[] { - new Integer(details[i].getJspBeginLineNumber()), - details[i].getJspFileName() - }; - buf.append(Localizer.getMessage(jsp.error.single.line.number, -args)); - buf.append(Localizer.getMessage(jsp.error.corresponding.servlet)); - buf.append(details[i].getErrorMessage()); - buf.append('\n'); - } +if ((details.length == 1) + (details[0].getJspBeginLineNumber() == -1) + (details[0].getJspFileName() == null)) { +// Special case: No Java compiler found +buf.append(Localizer.getMessage(jsp.error.nojavac)); +buf.append('\n'); +} else { +for (int i=0; i details.length; i++) { +args = new Object[] { +new Integer(details[i].getJspBeginLineNumber()), +details[i].getJspFileName() +}; +buf.append(Localizer.getMessage(jsp.error.single.line.number, +args)); +buf.append(Localizer.getMessage(jsp.error.corresponding.servlet)); +buf.append(details[i].getErrorMessage()); +buf.append('\n'); +} +} throw new JasperException(Localizer.getMessage(jsp.error.unable.compile) + buf); 1.120 +5 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.119 retrieving revision 1.120 diff -u -r1.119 -r1.120 --- messages.properties 6 Jul 2003 22:56:54 - 1.119 +++ messages.properties 8 Jul 2003 22:53:38 - 1.120 @@ -11,6 +11,10 @@ jsp.message.scratch.dir.is=Scratch dir for the JSP engine is: {0} jsp.message.parent_class_loader_is=Parent class loader is: {0} jsp.message.dont.modify.servlets=IMPORTANT: Do not modify the generated servlets +jsp.error.nojavac=\n\nNo Java compiler was found to compile the generated source for the JSP. \ +\nThis can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK \ +\nto the common/lib directory of the Tomcat server, followed by a Tomcat restart. \ +\nIf using an alternate Java compiler, please check its installation and access path. jsp.error.not.impl.comments=Internal error: Comments not implemented jsp.error.not.impl.directives=Internal error: Directives not implemented jsp.error.not.impl.declarations=Internal error: Declarations not implemented - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
remm2003/07/06 15:56:54 Modified:jasper2/src/share/org/apache/jasper JspC.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Support regenerating the web.xml without manually removing the generated servlet mappings (this fixes issues when not doing a build clean between two compilations). - Also remove generated web.xml fragment. Revision ChangesPath 1.48 +26 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.47 retrieving revision 1.48 diff -u -r1.47 -r1.48 --- JspC.java 30 Jun 2003 22:10:00 - 1.47 +++ JspC.java 6 Jul 2003 22:56:54 - 1.48 @@ -575,6 +575,10 @@ File webappBase = new File(uriRoot); File webXml = new File(webappBase, WEB-INF/web.xml); File webXml2 = new File(webappBase, WEB-INF/web2.xml); +String insertStartMarker = +Localizer.getMessage(jspc.webinc.insertStart); +String insertEndMarker = +Localizer.getMessage(jspc.webinc.insertEnd); BufferedReader reader = new BufferedReader(new FileReader(webXml)); BufferedReader fragmentReader = @@ -589,6 +593,22 @@ if (line == null) { break; } +// Skip anything previously generated by JSPC +if (line.indexOf(insertStartMarker) = 0) { +while (true) { +line = reader.readLine(); +if (line == null) { +return; +} +if (line.indexOf(insertEndMarker) = 0) { +line = reader.readLine(); +if (line == null) { +return; +} +break; +} +} +} for (int i = 0; i insertBefore.length; i++) { pos = line.indexOf(insertBefore[i]); if (pos = 0) @@ -602,6 +622,7 @@ } } +writer.println(insertStartMarker); while (true) { String line2 = fragmentReader.readLine(); if (line2 == null) { @@ -609,6 +630,7 @@ } writer.println(line2); } +writer.println(insertEndMarker); writer.println(line.substring(pos)); @@ -640,6 +662,7 @@ fos.close(); webXml2.delete(); +(new File(webxmlFile)).delete(); } 1.119 +3 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.118 retrieving revision 1.119 diff -u -r1.118 -r1.119 --- messages.properties 19 Jun 2003 21:06:30 - 1.118 +++ messages.properties 6 Jul 2003 22:56:54 - 1.119 @@ -238,6 +238,8 @@ resource-ref, security-constraint, login-config, security-role,\n\ env-entry, and ejb-ref elements should follow this fragment.\n\ --\n +jspc.webinc.insertEnd=!-- JSPC servlet mappings end -- +jspc.webinc.insertStart=!-- JSPC servlet mappings start -- jspc.error.jasperException=error-the file ''{0}'' generated the following parse exception: {1} jspc.error.generalException=ERROR-the file ''{0}'' generated the following general exception: jspc.error.fileDoesNotExist=The file argument ''{0}'' does not exist - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/06/19 14:06:31 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Fix 20894: body-content value of JSP should be error if SimpleTag Revision ChangesPath 1.108 +12 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.107 retrieving revision 1.108 diff -u -r1.107 -r1.108 --- Validator.java11 May 2003 22:54:47 - 1.107 +++ Validator.java19 Jun 2003 21:06:30 - 1.108 @@ -709,6 +709,15 @@ } /* + * The bodyconet of a SimpleTag cannot be JSP. + */ + if (n.implementsSimpleTag() + tagInfo.getBodyContent().equalsIgnoreCase(TagInfo.BODY_CONTENT_JSP)) { +err.jspError(n, jsp.error.simpletag.badbodycontent, +tagInfo.getTagClassName()); + } + + /* * If the tag handler declares in the TLD that it supports dynamic * attributes, it also must implement the DynamicAttributes * interface. 1.118 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.117 retrieving revision 1.118 diff -u -r1.117 -r1.118 --- messages.properties 3 May 2003 02:36:13 - 1.117 +++ messages.properties 19 Jun 2003 21:06:30 - 1.118 @@ -309,6 +309,7 @@ jsp.error.badStandardAction=Invalid standard action jsp.error.xml.badStandardAction=Invalid standard action: {0} jsp.error.tagdirective.badbodycontent=Invalid body-content ({0}) in tag directive +jsp.error.simpletag.badbodycontent=The TLD for the class {0} specifies an invalid body-content (JSP) for a SimpleTag. jsp.error.config_pagedir_encoding_mismatch=Page-encoding specified in jsp-property-group ({0}) is different from that specified in page directive ({1}) jsp.error.prolog_pagedir_encoding_mismatch=Page-encoding specified in XML prolog ({0}) is different from that specified in page directive ({1}) jsp.error.prolog_config_encoding_mismatch=Page-encoding specified in XML prolog ({0}) is different from that specified in jsp-property-group ({1}) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/03/26 16:13:51 Modified:jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties Log: Fixed 15959: Confusing Error Message with jsp:forward Revision ChangesPath No revision No revision 1.9.2.8 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.9.2.7 retrieving revision 1.9.2.8 diff -u -r1.9.2.7 -r1.9.2.8 --- messages.properties 10 Feb 2003 18:18:52 - 1.9.2.7 +++ messages.properties 27 Mar 2003 00:13:51 - 1.9.2.8 @@ -73,7 +73,7 @@ jsp.error.unable.rename=Unable to rename class file {0} to {1} jsp.error.mandatory.attribute={0}: Mandatory attribute {1} missing jsp.engine.info=Jasper JSP 1.1 Engine -jsp.error.invalid.attribute={0}: Invalid attribute, {1} +jsp.error.invalid.attribute={0} has invalid attribute: {1} jsp.error.usebean.class.notfound=Class: {0} not found jsp.error.file.cannot.read=Cannot read file: {0} jsp.error.file.already.registered=Recursive include of file {0} - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/03/24 15:50:41 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Implemented JSP 2.0 change to page directive: Support more than one 'pageEncoding' attribute per translation unit, but only one per file Revision ChangesPath 1.95 +14 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.94 retrieving revision 1.95 diff -u -r1.94 -r1.95 --- Validator.java24 Mar 2003 21:36:05 - 1.94 +++ Validator.java24 Mar 2003 23:50:40 - 1.95 @@ -124,6 +124,9 @@ private boolean infoSeen = false; private boolean pageEncodingSeen = false; + private Node.Root oldPageDirectiveRoot = null; + private Node.Root currentPageDirectiveRoot = null; + /* * Constructor */ @@ -138,6 +141,12 @@ JspUtil.checkAttributes(Page directive, n, pageDirectiveAttrs, err); + oldPageDirectiveRoot = currentPageDirectiveRoot; + currentPageDirectiveRoot = n.getRoot(); + if (oldPageDirectiveRoot != currentPageDirectiveRoot) { + pageEncodingSeen = false; + } + // JSP.2.10.1 Attributes attrs = n.getAttributes(); for (int i = 0; i attrs.getLength(); i++) { @@ -249,7 +258,8 @@ infoSeen = true; } else if (pageEncoding.equals(attr)) { if (pageEncodingSeen) - err.jspError(n, jsp.error.page.multiple.pageencoding); + err.jspError(n, + jsp.error.page.multiple.pageencoding); pageEncodingSeen = true; /* * Report any encoding conflict, treating UTF-16, 1.107 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.106 retrieving revision 1.107 diff -u -r1.106 -r1.107 --- messages.properties 21 Mar 2003 00:43:58 - 1.106 +++ messages.properties 24 Mar 2003 23:50:41 - 1.107 @@ -55,6 +55,7 @@ jsp.error.page.defafteruse.language=Page directive: can't define language after a scriptlet jsp.error.page.nomapping.language=Page directive: No mapping for language: jsp.error.page.multiple.extends=Page directive: can't have multiple occurrences of extends +jsp.error.page.multiple.pageencoding=More than one \'pageEncoding\' page directive attribute jsp.error.page.bad_b_and_a_combo=Page directive: Illegal combination of buffer=\none\ autoFlush=\false\ jsp.error.not.impl.taglib=Internal error: Tag extensions not implemented jsp.error.include.missing.file=Missing file argument to include - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/03/24 16:07:12 Modified:jasper2/src/share/org/apache/jasper/compiler ELFunctionMapper.java ELNode.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Implement a FunctionMapper to be used in parseExpression, for checking expression syntax. Refactor some codes dealing with signature parsing, so that it can be used in both Validator and ELFunctionMapper. Revision ChangesPath 1.3 +10 -52 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ELFunctionMapper.java Index: ELFunctionMapper.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ELFunctionMapper.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ELFunctionMapper.java 21 Mar 2003 00:43:57 - 1.2 +++ ELFunctionMapper.java 25 Mar 2003 00:07:10 - 1.3 @@ -185,64 +185,22 @@ String key = f.getPrefix()+ : + f.getName(); ds.append( + decName + .mapFunction(\ + key + \, + funcInfo.getFunctionClass() + .class, + - '\' + getMethod(f) + \, + - new Class[] { + getParameters(f) + } + - );\n); + '\' + f.getMethodName() + \, + + new Class[] {); + String params[] = f.getParameters(); + for (int k = 0; k params.length; k++) { + if (k != 0) { + ds.append(, ); + } + ds.append(params[k] + .class); + } + ds.append(});\n); } el.setMapName(decName); } private String getMapName() { return _jspx_fnmap_ + currFunc++; - } - - private String getMethod(ELNode.Function func) - throws JasperException { - FunctionInfo funcInfo = func.getFunctionInfo(); - String signature = funcInfo.getFunctionSignature(); - - int start = signature.indexOf(' '); - if (start 0) { - err.jspError(jsp.error.tld.fn.invalid.signature, - func.getPrefix(), func.getName()); - } - int end = signature.indexOf('('); - if (end 0) { - err.jspError(jsp.error.tld.fn.invalid.signature.parenexpected, - func.getPrefix(), func.getName()); - } - return signature.substring(start+1, end).trim(); - } - - private String getParameters(ELNode.Function func) - throws JasperException { - FunctionInfo funcInfo = func.getFunctionInfo(); - StringBuffer buf = new StringBuffer(); - String signature = funcInfo.getFunctionSignature(); - // Signature is of the form - // return-type S method-name S? '(' - // arg-type ( ',' arg-type )* )? ')' - int start = signature.indexOf('(') + 1; - boolean lastArg = false; - while (true) { - int p = signature.indexOf(',', start); - if (p 0) { - p = signature.indexOf(')', start); - if (p 0) { - err.jspError(jsp.error.tld.fn.invalid.signature, - func.getPrefix(), func.getName()); - } - lastArg = true; - } - String arg = signature.substring(start, p).trim(); - buf.append(arg + .class); - if (lastArg) { - break; - } - buf.append(','); - start = p+1; - } - return buf.toString(); } } } 1.2 +21 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ELNode.java Index: ELNode.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ELNode.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ELNode.java 19 Mar 2003 20:51:34 - 1.1 +++ ELNode.java 25 Mar 2003 00:07:10 - 1.2 @@ -143,9 +143,11 @@ */ public static class Function extends ELNode { - String prefix; - String name; - FunctionInfo functionInfo; + private String prefix; + private String name; + private FunctionInfo functionInfo; + private String methodName; + private String[] parameters; Function(String prefix, String name) { this.prefix = prefix; @@ -170,6 +172,22 @@ public FunctionInfo getFunctionInfo() {
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/03/24 16:18:25 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Forgot this one. Revision ChangesPath 1.109 +4 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.108 retrieving revision 1.109 diff -u -r1.108 -r1.109 --- messages.properties 25 Mar 2003 00:07:12 - 1.108 +++ messages.properties 25 Mar 2003 00:18:25 - 1.109 @@ -55,7 +55,6 @@ jsp.error.page.defafteruse.language=Page directive: can't define language after a scriptlet jsp.error.page.nomapping.language=Page directive: No mapping for language: jsp.error.page.multiple.extends=Page directive: can't have multiple occurrences of extends -jsp.error.page.multiple.pageencoding=More than one \'pageEncoding\' page directive attribute jsp.error.page.bad_b_and_a_combo=Page directive: Illegal combination of buffer=\none\ autoFlush=\false\ jsp.error.not.impl.taglib=Internal error: Tag extensions not implemented jsp.error.include.missing.file=Missing file argument to include @@ -287,7 +286,6 @@ jsp.error.internal.unexpected_node_type=Internal Error: Unexpected node type encountered jsp.error.tld.fn.invalid.signature=Invalid syntax for function signature in TLD. Tag Library: {0}, Function: {1} jsp.error.tld.fn.duplicate.name=Duplicate function name {0} in tag library {1} -jsp.error.tld.fn.invalid.signature.classnotfound=Invalid syntax for function signature in TLD. Class not found: ${0}. Tag Library: {1}, Function: {2}. jsp.error.tld.fn.invalid.signature.commaexpected=Invalid syntax for function signature in TLD. Comma ',' expected. Tag Library: {0}, Function: {1}. jsp.error.tld.fn.invalid.signature.parenexpected=Invalid syntax for function signature in TLD. Parenthesis '(' expected. Tag Library: {0}, Function: {1}. jsp.error.tld.mandatory.element.missing=Mandatory TLD element missing or empty: {0} @@ -376,3 +374,6 @@ jsp.error.noFunctionPrefix=The function {0} must be used with a prefix when a default namespace is not specified jsp.error.noFunction=The function {0} cannot be located with the specified prefix jsp.error.noFunctionMethod=The method {0} for the function {1} is not defined in the class {2} +jsp.error.function.classnotfound=The class {0} specified in TLD for the function {1} cannot be found. {2} +jsp.error.signature.classnotfound=The class {0} specified in the method signature in TLD for the function {1} cannot be found. {2} + - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/03/20 16:43:58 Modified:jasper2/src/share/org/apache/jasper/compiler ELFunctionMapper.java Generator.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Minor fix in function mapper. Revision ChangesPath 1.2 +6 -5 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ELFunctionMapper.java Index: ELFunctionMapper.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ELFunctionMapper.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ELFunctionMapper.java 19 Mar 2003 20:51:34 - 1.1 +++ ELFunctionMapper.java 21 Mar 2003 00:43:57 - 1.2 @@ -83,14 +83,15 @@ map.ds = new StringBuffer(); map.ss = new StringBuffer(); - map.ds.append(static {\n); page.visit(map.new ELFunctionVisitor()); - map.ds.append(}\n); // Append the declarations to the root node - Node root = page.getRoot(); - new Node.Declaration(map.ss.toString(), root.getStart(), root); - new Node.Declaration(map.ds.toString(), root.getStart(), root); + String ds = map.ds.toString(); + if (ds.length() 0) { + Node root = page.getRoot(); + new Node.Declaration(map.ss.toString(), root.getStart(), root); + new Node.Declaration(static {\n + ds + }\n, root.getStart(), root); + } } class ELFunctionVisitor extends Node.Visitor { 1.175 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.174 retrieving revision 1.175 diff -u -r1.174 -r1.175 --- Generator.java19 Mar 2003 20:51:34 - 1.174 +++ Generator.java21 Mar 2003 00:43:57 - 1.175 @@ -1020,7 +1020,7 @@ pageContext.findAttribute(\ + name + \), \ + property + \, + quote(value.getValue()) + , -+ pageContext, _jspx_fnmap);); ++ pageContext, + value.getEL().getMapName() + );); /* + (javax.servlet.jsp.el.VariableResolver) pageContext, + (javax.servlet.jsp.el.FunctionMapper) this );); 1.92 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.91 retrieving revision 1.92 diff -u -r1.91 -r1.92 --- Validator.java19 Mar 2003 20:51:35 - 1.91 +++ Validator.java21 Mar 2003 00:43:57 - 1.92 @@ -1205,7 +1205,7 @@ if (prefix == null) { // In XML syntax, use the default namespace if (defaultNS == null) { - err.jspError(n, jsp.error.noFuncionPrefix, + err.jspError(n, jsp.error.noFunctionPrefix, function); } uri = defaultNS; 1.106 +2 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.105 retrieving revision 1.106 diff -u -r1.105 -r1.106 --- messages.properties 19 Mar 2003 20:51:35 - 1.105 +++ messages.properties 21 Mar 2003 00:43:58 - 1.106 @@ -97,8 +97,6 @@ jsp.error.beans.nomethod.setproperty=Can''t find a method to write property ''{0}'' of type ''{1}'' in a bean of type ''{2}'' jsp.error.beans.noproperty=Cannot find any information on property ''{0}'' in a bean of type ''{1}'' jsp.error.beans.setproperty.noindexset=Cannot set indexed property -jsp.error.beans.property.conversion=Unable to convert string \{0}\ to class \{1}\ for attribute \{2}\: {3} -jsp.error.beans.propertyeditor.notregistered=Property Editor not registered with the PropertyEditorManager jsp.error.include.tag=Invalid jsp:include tag jsp.error.include.noflush=jsp:include needs to have \flush=true\ jsp.error.include.badflush=jsp:include page=\...\ flush=\true\ is the only valid combination in JSP 1.0 @@ -375,4 +373,4 @@
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties jsp12.dtd
kinman 2003/03/19 12:51:35 Modified:jasper2/src/share/org/apache/jasper/compiler Compiler.java Generator.java JspUtil.java Node.java PageInfo.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Added: jasper2/src/share/org/apache/jasper/compiler ELFunctionMapper.java ELNode.java ELParser.java Removed: jasper2/src/share/org/apache/jasper/compiler FunctionMapperImpl.java jasper2/src/share/org/apache/jasper/resources jsp12.dtd Log: - Remove FunctionMapperImpl.java since parseExpression does not validate functions. - Implement a EL expression parser. It only parses functions now, but can be expanded to be a full parser, in the future. - Modify Generator to output a function mapper for each invokation of EL expression evaluation. The namespace for functions can now be reused, if the page is in XML syntax. Revision ChangesPath 1.59 +4 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Compiler.java Index: Compiler.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Compiler.java,v retrieving revision 1.58 retrieving revision 1.59 diff -u -r1.58 -r1.59 --- Compiler.java 27 Feb 2003 22:51:38 - 1.58 +++ Compiler.java 19 Mar 2003 20:51:34 - 1.59 @@ -253,7 +253,7 @@ // Generate FunctionMapper (used for validation of EL expressions and // code generation) - pageInfo.setFunctionMapper(new FunctionMapperImpl(this)); + // pageInfo.setFunctionMapper(new FunctionMapperImpl(this)); // Validate and process attributes Validator.validate(this, pageNodes); @@ -278,6 +278,9 @@ // Optimizations by Tag Plugins TagPluginManager tagPluginManager = options.getTagPluginManager(); tagPluginManager.apply(pageNodes, errDispatcher, pageInfo); + + // Generate static funciton mapper codes. + ELFunctionMapper.map(this, pageNodes); // generate servlet .java file Generator.generate(writer, this, pageNodes); 1.174 +7 -74 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.173 retrieving revision 1.174 diff -u -r1.173 -r1.174 --- Generator.java8 Mar 2003 00:58:09 - 1.173 +++ Generator.java19 Mar 2003 20:51:34 - 1.174 @@ -435,10 +435,6 @@ out.printil(}); out.println(); } - -// Static data for EL function and prefix maps: -generateELFunctionMap(); -generateFunctionMapper(); } /** @@ -613,70 +609,6 @@ } } -/** - * Generates EL Function map section - */ -private void generateELFunctionMap() -throws JasperException -{ -FunctionMapperImpl fnMap = pageInfo.getFunctionMapper(); - -out.printil(private static org.apache.jasper.runtime.ProtectedFunctionMapper _jspx_fnmap;); -if (!fnMap.isEmpty()) { -Iterator iter = fnMap.keySet().iterator(); -out.println(); -out.printil(static {); -out.pushIndent(); - out.printil(_jspx_fnmap = org.apache.jasper.runtime.ProtectedFunctionMapper.getInstance();); -while (iter.hasNext()) { -String key = (String) iter.next(); - out.printin(_jspx_fnmap.mapFunction(); - out.print(quote(key)); - out.print(, ); - out.print(fnMap.getFunctionClass(key) + .class, ); - out.print(quote(fnMap.getMethodName(key))); - out.print(, ); - Class[] args = fnMap.getParameterTypes(key); - if (args != null) { - out.print(new Class[] { ); - for( int j = 0; j args.length; j++ ) { - out.print( args[j].getName() + .class ); - if( j (args.length - 1) ) { - out.print( , ); - } - } - out.print(} ); - } else { - out.print(null); - } - out.println();); - } - out.popIndent(); - out.printil(}); - out.println(); - } -} - -/** - * Generates the method needed to implement FunctionMapper - */ -private void
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/03/03 10:19:59 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 17611: Translation error is not raised if an invalid value is provided to the version attribute of the jsp:root element Revision ChangesPath 1.88 +7 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.87 retrieving revision 1.88 diff -u -r1.87 -r1.88 --- Validator.java1 Mar 2003 03:23:03 - 1.87 +++ Validator.java3 Mar 2003 18:19:59 - 1.88 @@ -454,6 +454,10 @@ public void visit(Node.JspRoot n) throws JasperException { JspUtil.checkAttributes(Jsp:root, n, jspRootAttrs, err); + String version = n.getTextAttribute(version); + if (!version.equals(1.2) !version.equals(2.0)) { + err.jspError(n, jsp.error.jsproot.version.invalid, version); + } visitBody(n); } 1.103 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.102 retrieving revision 1.103 diff -u -r1.102 -r1.103 --- messages.properties 28 Feb 2003 00:12:41 - 1.102 +++ messages.properties 3 Mar 2003 18:19:59 - 1.103 @@ -371,3 +371,4 @@ jsp.error.coda.xml=The JSP document {0} has a coda ({1}) associated with it jsp.error.attribute.null_name=Null attribute name jsp.error.jsptext.badcontent=\'lt;\', when appears in the body of lt;jsp:textgt;, must be encapsulated within a CDATA +jsp.error.jsproot.version.invalid=Invalid version number: \{0}\, must be \1.2\ or \2.0\ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/02/27 16:12:42 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Fix 17387: Bad error message for illegal content in jsp:text Revision ChangesPath 1.66 +6 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.65 retrieving revision 1.66 diff -u -r1.65 -r1.66 --- Parser.java 26 Feb 2003 17:58:07 - 1.65 +++ Parser.java 28 Feb 2003 00:12:41 - 1.66 @@ -1501,9 +1501,11 @@ new Node.TemplateText( ttext.toString(), start, parent ); -if( !reader.matchesETagWithoutLessThan( jsp:text ) ) { + if (! reader.hasMoreInput()) { err.jspError( start, jsp.error.unterminated, lt;jsp:textgt; ); + } else if( !reader.matchesETagWithoutLessThan( jsp:text ) ) { +err.jspError( start, jsp.error.jsptext.badcontent); } } } 1.102 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.101 retrieving revision 1.102 diff -u -r1.101 -r1.102 --- messages.properties 26 Feb 2003 17:10:48 - 1.101 +++ messages.properties 28 Feb 2003 00:12:41 - 1.102 @@ -370,3 +370,4 @@ jsp.error.prelude.xml=The JSP document {0} has a prelude ({1}) associated with it jsp.error.coda.xml=The JSP document {0} has a coda ({1}) associated with it jsp.error.attribute.null_name=Null attribute name +jsp.error.jsptext.badcontent=\'lt;\', when appears in the body of lt;jsp:textgt;, must be encapsulated within a CDATA 1.36 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- messages_es.properties24 Feb 2003 23:44:00 - 1.35 +++ messages_es.properties28 Feb 2003 00:12:41 - 1.36 @@ -265,3 +265,4 @@ jsp.error.variable.alias= jsp.error.prelude.xml= jsp.error.coda.xml= +jsp.error.jsptext.badcontent= 1.20 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- messages_fr.properties24 Feb 2003 23:44:00 - 1.19 +++ messages_fr.properties28 Feb 2003 00:12:41 - 1.20 @@ -303,4 +303,5 @@ jsp.error.variable.alias= jsp.error.prelude.xml= jsp.error.coda.xml= +jsp.error.jsptext.badcontent= 1.36 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties Index: messages_ja.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- messages_ja.properties24 Feb 2003 23:44:00 - 1.35 +++ messages_ja.properties28 Feb 2003 00:12:41 - 1.36 @@ -296,4 +296,5 @@ jsp.error.variable.alias= jsp.error.prelude.xml= jsp.error.coda.xml= +jsp.error.jsptext.badcontent= - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/25 17:57:30 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 17398: Jasper incorrectly allows a page author to specify a body for jsp:output in a JSP document. Revision ChangesPath 1.82 +7 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.81 retrieving revision 1.82 diff -u -r1.81 -r1.82 --- Validator.java26 Feb 2003 01:32:20 - 1.81 +++ Validator.java26 Feb 2003 01:57:30 - 1.82 @@ -951,6 +951,10 @@ public void visit(Node.JspOutput n) throws JasperException { JspUtil.checkAttributes(jsp:output, n, jspOutputAttrs, err); + if (n.getBody() != null) { +err.jspError(n, jsp.error.jspoutput.nonemptybody); + } + if (pageInfo.getOmitXmlDecl() != null) { err.jspError(n, jsp.error.multiple.jspoutput); } 1.100 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.99 retrieving revision 1.100 diff -u -r1.99 -r1.100 --- messages.properties 24 Feb 2003 23:43:59 - 1.99 +++ messages.properties 26 Feb 2003 01:57:30 - 1.100 @@ -355,6 +355,7 @@ jsp.error.xml.closeQuoteMissingInXMLDecl = closing quote in the value following \{0}\ in the XML declaration is missing. jsp.error.xml.invalidHighSurrogate = High surrogate bits in UTF-8 sequence must not exceed 0x10 but found 0x{0}. jsp.error.multiple.jspoutput = Cannot have multiple occurrences of lt;jsp:outputgt; +jsp.error.jspoutput.nonemptybody=lt;jsp:outputgt; must not have a body jsp.error.attributes.not.allowed = {0} must not have any attributes jsp.error.tagfile.badSuffix=Missing \.tag\ suffix in tag file path {0} jsp.error.tagfile.illegalPath=Illegal tag file path: {0}, must start with \/WEB-INF/tags\ or \/META-INF/tags\ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/24 10:09:38 Modified:jasper2/src/share/org/apache/jasper/compiler Generator.java Node.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 17052: jsp:element name attribute clobbered by nested jsp:attribute Revision ChangesPath 1.165 +14 -23 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.164 retrieving revision 1.165 diff -u -r1.164 -r1.165 --- Generator.java23 Feb 2003 20:57:05 - 1.164 +++ Generator.java24 Feb 2003 18:09:36 - 1.165 @@ -1700,9 +1700,9 @@ public void visit(Node.JspElement n) throws JasperException { - // Hashtable for storing attribute name/value combinations + // Compute attribute value string for XML-style and named + // attributes Hashtable map = new Hashtable(); - Node.JspAttribute[] attrs = n.getJspAttributes(); for (int i=0; iattrs.length; i++) { String attrStr = null; @@ -1710,34 +1710,25 @@ attrStr = generateNamedAttributeValue( attrs[i].getNamedAttributeNode()); } else { - if (name.equals(attrs[i].getName())) { - attrStr = attributeValue(attrs[i], false, String.class, - null); - } else { - attrStr = attributeValue(attrs[i], false, Object.class, - null); - } - } - String s = null; - if (name.equals(attrs[i].getName())) { - s = + + attrStr; - } else { - s = + \ + attrs[i].getName() + = + - + attrStr + + \; + attrStr = attributeValue(attrs[i], false, Object.class, + null); } + String s = + \ + attrs[i].getName() + = + + + attrStr + + \; map.put(attrs[i].getName(), s); } // Write begin tag out.printin(out.write(\\); - // Write 'name' attribute - out.print((String) map.get(name)); + + // Write XML-style 'name' attribute + out.print( + + attributeValue(n.getNameAttribute(), false, + String.class, null)); + // Write remaining attributes Enumeration enum = map.keys(); while (enum.hasMoreElements()) { String attrName = (String) enum.nextElement(); - if (name.equals(attrName)) - continue; out.print((String) map.get(attrName)); } 1.62 +18 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java Index: Node.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java,v retrieving revision 1.61 retrieving revision 1.62 diff -u -r1.61 -r1.62 --- Node.java 23 Feb 2003 20:57:05 - 1.61 +++ Node.java 24 Feb 2003 18:09:37 - 1.62 @@ -1052,6 +1052,7 @@ public static class JspElement extends Node { private JspAttribute[] jspAttrs; + private JspAttribute nameAttr; public JspElement(Attributes attrs, Mark start, Node parent) { this(JSP_ELEMENT_ACTION, attrs, null, start, parent); @@ -1072,6 +1073,20 @@ public JspAttribute[] getJspAttributes() { return jspAttrs; + } + + /* + * Sets the XML-style 'name' attribute + */ + public void setNameAttribute(JspAttribute nameAttr) { + this.nameAttr = nameAttr; + } + + /* + * Gets the XML-style 'name' attribute + */ + public JspAttribute getNameAttribute() { + return this.nameAttr; } } 1.79 +25 -26 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.78 retrieving revision 1.79 diff -u -r1.78 -r1.79 --- Validator.java23 Feb 2003 20:57:05 - 1.78 +++ Validator.java24 Feb 2003 18:09:37 -
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/24 14:30:26 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Added support for default namespace in JSP documents. Revision ChangesPath 1.42 +63 -71 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- JspDocumentParser.java23 Feb 2003 20:57:05 - 1.41 +++ JspDocumentParser.java24 Feb 2003 22:30:26 - 1.42 @@ -83,7 +83,7 @@ class JspDocumentParser extends DefaultHandler implements LexicalHandler, TagConstants { -private static final String XMLNS = xmlns:; +private static final String XMLNS_ATTR = xmlns; private static final String XMLNS_JSP = xmlns:jsp; private static final String JSP_VERSION = version; private static final String LEXICAL_HANDLER_PROPERTY @@ -249,8 +249,8 @@ node = parseStandardAction(qName, localName, attrsCopy, xmlnsAttrs, start, current); } else { - node = parseCustomAction(qName, attrsCopy, xmlnsAttrs, start, - current); + node = parseCustomAction(qName, localName, uri, attrsCopy, + xmlnsAttrs, start, current); if (node == null) { node = new Node.UninterpretedTag(qName, localName, attrsCopy, xmlnsAttrs, start, current); @@ -630,19 +630,17 @@ * and returns the corresponding Node object. */ private Node parseCustomAction(String qName, +String localName, +String uri, Attributes attrs, Attributes xmlnsAttrs, Mark start, Node parent) throws SAXException { - int colon = qName.indexOf(':'); - if (colon == -1) { - return null; - } - String prefix = qName.substring(0, colon); - String shortName = qName.substring(colon + 1); - if (shortName.length() == 0) { - return null; + String prefix = ; + int colon = qName.indexOf(':'); + if (colon != -1) { + prefix = qName.substring(0, colon); } // Check if this is a user-defined (custom) tag @@ -650,11 +648,12 @@ if (tagLibInfo == null) { return null; } - TagInfo tagInfo = tagLibInfo.getTag(shortName); -TagFileInfo tagFileInfo = tagLibInfo.getTagFile(shortName); + + TagInfo tagInfo = tagLibInfo.getTag(localName); +TagFileInfo tagFileInfo = tagLibInfo.getTagFile(localName); if (tagInfo == null tagFileInfo == null) { - throw new SAXException(Localizer.getMessage(jsp.error.bad_tag, - shortName, prefix)); + throw new SAXException(Localizer.getMessage(jsp.error.xml.bad_tag, + localName, uri)); } Class tagHandlerClass = null; if (tagFileInfo == null) { @@ -664,13 +663,13 @@ } catch (Exception e) { throw new SAXException( Localizer.getMessage(jsp.error.unable.loadclass, - shortName, prefix)); + localName, prefix)); } } else { tagInfo = tagFileInfo.getTagInfo(); } - return new Node.CustomTag(qName, prefix, shortName, attrs, xmlnsAttrs, + return new Node.CustomTag(qName, prefix, localName, attrs, xmlnsAttrs, start, parent, tagInfo, tagFileInfo, tagHandlerClass); } @@ -694,7 +693,7 @@ int len = attrs.getLength(); for (int i=len-1; i=0; i--) { String qName = attrs.getQName(i); - if (qName.startsWith(XMLNS)) { + if (qName.startsWith(XMLNS_ATTR)) { if (result == null) { result = new AttributesImpl(); } @@ -713,29 +712,27 @@ * and adds the corresponding TagLibraryInfo objects to the set of custom * tag libraries. */ -private void addCustomTagLibraries(Attributes attrs) +private void addCustomTagLibraries(Attributes xmlnsAttrs)
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/24 15:23:39 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: added javadocs and changed error messages Revision ChangesPath 1.43 +10 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- JspDocumentParser.java24 Feb 2003 22:30:26 - 1.42 +++ JspDocumentParser.java24 Feb 2003 23:23:39 - 1.43 @@ -747,7 +747,13 @@ } /* - * XXX + * Gets the tag library associated with the given uri namespace to which + * the given prefix is bound. + * + * @param uri The uri namespace + * @param prefix The prefix that is bound to the uri namespace + * + * @return The tag library associated with the given uri namespace */ private TagLibraryInfo getTaglibInfo(String uri, String prefix) throws JasperException { 1.98 +3 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.97 retrieving revision 1.98 diff -u -r1.97 -r1.98 --- messages.properties 24 Feb 2003 22:30:26 - 1.97 +++ messages.properties 24 Feb 2003 23:23:39 - 1.98 @@ -177,8 +177,8 @@ jsp.error.unable.to_find_method=Unable to find setter method for attribute: {0} jsp.error.unable.to_convert_string=Unable to convert a String to {0} for attribute {1} jsp.error.unable.to_introspect=Unable to introspect on tag handler class: {0} because of {1} -jsp.error.bad_tag=Tag \{0}\ not defined in tag library imported with prefix \{1}\ -jsp.error.xml.bad_tag=Tag \{0}\ not defined in tag library associated with uri \{1}\ +jsp.error.bad_tag=No tag \{0}\ defined in tag library imported with prefix \{1}\ +jsp.error.xml.bad_tag=No tag \{0}\ defined in tag library associated with uri \{1}\ jsp.error.bad_string_Character=Cannot extract a Character from a zero length array jsp.error.bad_string_char=Cannot extract a char from a zero length array jsp.warning.compiler.class.cantcreate=Can't create an instance of specified compiler plugin class {0} due to {1}. Will default to Sun Java Compiler. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
luehe 2003/02/24 15:44:00 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Renamed jsp.error.unable.loadclass to jsp.error.loadclass.taghandler, and added name of tag handler class to error string Revision ChangesPath 1.44 +7 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.43 retrieving revision 1.44 diff -u -r1.43 -r1.44 --- JspDocumentParser.java24 Feb 2003 23:23:39 - 1.43 +++ JspDocumentParser.java24 Feb 2003 23:43:59 - 1.44 @@ -657,13 +657,13 @@ } Class tagHandlerClass = null; if (tagFileInfo == null) { + String handlerClassName = tagInfo.getTagClassName(); try { - tagHandlerClass - = ctxt.getClassLoader().loadClass(tagInfo.getTagClassName()); + tagHandlerClass = ctxt.getClassLoader().loadClass(handlerClassName); } catch (Exception e) { throw new SAXException( - Localizer.getMessage(jsp.error.unable.loadclass, - localName, prefix)); + Localizer.getMessage(jsp.error.loadclass.taghandler, + handlerClassName, qName)); } } else { tagInfo = tagFileInfo.getTagInfo(); 1.63 +7 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.62 retrieving revision 1.63 diff -u -r1.62 -r1.63 --- Parser.java 23 Feb 2003 20:57:05 - 1.62 +++ Parser.java 24 Feb 2003 23:43:59 - 1.63 @@ -1328,12 +1328,12 @@ if (tagFileInfo == null) { // Must be a classic tag, load it here. // tag files will be loaded later, in TagFileProcessor + String handlerClassName = tagInfo.getTagClassName(); try { - tagHandlerClass - = ctxt.getClassLoader().loadClass(tagInfo.getTagClassName()); + tagHandlerClass = ctxt.getClassLoader().loadClass(handlerClassName); } catch (Exception e) { - err.jspError(start, jsp.error.unable.loadclass, shortTagName, - prefix); + err.jspError(start, jsp.error.loadclass.taghandler, + handlerClassName, tagName); } } else { tagInfo = tagFileInfo.getTagInfo(); 1.99 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.98 retrieving revision 1.99 diff -u -r1.98 -r1.99 --- messages.properties 24 Feb 2003 23:23:39 - 1.98 +++ messages.properties 24 Feb 2003 23:43:59 - 1.99 @@ -72,7 +72,7 @@ jsp.error.action.isnottagfile={0} action can be used in tag files only jsp.error.unterminated=Unterminated {0} tag jsp.error.usebean.notinsamefile=useBean tag must begin and end in the same physical file -jsp.error.unable.loadclass=Unable to load class {0} +jsp.error.loadclass.taghandler=Unable to load tag handler class \{0}\ for tag \{1}\ jsp.error.unable.compile=Unable to compile class for JSP jsp.error.unable.load=Unable to load class for JSP jsp.error.unable.rename=Unable to rename class file {0} to {1} 1.35 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.34 retrieving revision 1.35 diff -u -r1.34 -r1.35 --- messages_es.properties24 Feb 2003 19:39:39 - 1.34 +++ messages_es.properties24 Feb 2003 23:44:00 - 1.35 @@ -54,7 +54,7 @@ jsp.error.unknownException= ! Error no caturado ¡ Deberias considerar el poner una
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/13 17:36:32 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Report translation error if both 'tagdir' and 'uri' are specified in taglib directive Revision ChangesPath 1.77 +10 -6 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.76 retrieving revision 1.77 diff -u -r1.76 -r1.77 --- Validator.java13 Feb 2003 22:48:44 - 1.76 +++ Validator.java14 Feb 2003 01:36:32 - 1.77 @@ -467,10 +467,14 @@ public void visit(Node.TaglibDirective n) throws JasperException { JspUtil.checkAttributes(Taglib directive, n, taglibDirectiveAttrs, err); - // Either 'uri' or 'tagdir' attribute must be present - if (n.getAttributeValue(uri) == null - n.getAttributeValue(tagdir) == null) { + // Either 'uri' or 'tagdir' attribute must be specified + String uri = n.getAttributeValue(uri); + String tagdir = n.getAttributeValue(tagdir); + if (uri == null tagdir == null) { err.jspError(n, jsp.error.taglibDirective.missing.location); + } + if (uri != null tagdir != null) { + err.jspError(n, jsp.error.taglibDirective.both_uri_and_tagdir); } } 1.94 +3 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.93 retrieving revision 1.94 diff -u -r1.93 -r1.94 --- messages.properties 13 Feb 2003 23:26:42 - 1.93 +++ messages.properties 14 Feb 2003 01:36:32 - 1.94 @@ -263,7 +263,8 @@ tld.error.variableNotAllowed=It is an error for a tag that has one or more variable subelements to have a TagExtraInfo class that returns a non-null object. jsp.error.tldInWebDotXmlNotFound=Could not locate TLD {1} for URI {0} specified in web.xml jsp.error.taglibDirective.absUriCannotBeResolved=The absolute uri: {0} cannot be resolved in either web.xml or the jar files deployed with this application -jsp.error.taglibDirective.missing.location=Neither 'uri' nor 'tagdir' attribute specified in taglib directive +jsp.error.taglibDirective.missing.location=Neither \'uri\' nor \'tagdir\' attribute specified +jsp.error.taglibDirective.both_uri_and_tagdir=Both \'uri\' and \'tagdir\' attributes specified jsp.error.invalid.tagdir=Tag file directory {0} does not start with \/WEB-INF/tags\ jsp.error.unterminated.user.tag=Unterminated user-defined tag: ending tag {0} not found or incorrectly nested #jspx.error.templateDataNotInJspCdata=Validation Error: Element lt;{0}gt; cannot have template data. Template data must be encapsulated within a lt;jsp:cdatagt; element. [JSP1.2 PFD section 5.1.9]\nTemplate data in error: {1} - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/12 18:41:26 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: added support for jsp:fallback action to XML syntax Revision ChangesPath 1.38 +7 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.37 retrieving revision 1.38 diff -u -r1.37 -r1.38 --- JspDocumentParser.java7 Feb 2003 20:16:18 - 1.37 +++ JspDocumentParser.java13 Feb 2003 02:41:26 - 1.38 @@ -589,9 +589,12 @@ node = new Node.DoBodyAction(attrsCopy, start, current); } else if (qName.equals(JSP_ELEMENT)) { node = new Node.JspElement(attrsCopy, start, current); + } else if (qName.equals(JSP_FALLBACK)) { + node = new Node.FallBackAction(start, current); } else { throw new SAXParseException( - Localizer.getMessage(jsp.error.badStandardAction), + Localizer.getMessage(jsp.error.xml.badStandardAction, + qName), locator); } 1.92 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.91 retrieving revision 1.92 diff -u -r1.91 -r1.92 --- messages.properties 10 Feb 2003 18:21:32 - 1.91 +++ messages.properties 13 Feb 2003 02:41:26 - 1.92 @@ -306,6 +306,7 @@ jsp.error.duplicate.name.jspattribute=The attribute {0} specified in the standard or custom action also appears as the value of the name attribute in the enclosed jsp:attribute jsp.error.not.in.template={0} not allowed in a template text body. jsp.error.badStandardAction=Invalid standard action +jsp.error.xml.badStandardAction=Invalid standard action: {0} jsp.error.tagdirective.badbodycontent=Invalid body-content ({0}) in tag directive jsp.error.config_pagedir_encoding_mismatch=Page-encoding specified in jsp-property-group ({0}) is different from that specified in page directive ({1}) jsp.error.prolog_pagedir_encoding_mismatch=Page-encoding specified in XML prolog ({0}) is different from that specified in page directive ({1}) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/10 10:18:52 Modified:jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties Log: Added error message for jsp.error.buffer.invalid Revision ChangesPath No revision No revision 1.9.2.7 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.9.2.6 retrieving revision 1.9.2.7 diff -u -r1.9.2.6 -r1.9.2.7 --- messages.properties 3 Jan 2003 13:26:28 - 1.9.2.6 +++ messages.properties 10 Feb 2003 18:18:52 - 1.9.2.7 @@ -132,6 +132,7 @@ jsp.error.parse.error.in.TLD=Parse Error in the tag library descriptor: {0} jsp.error.unable.to.open.TLD=Unable to open the tag library descriptor: {0} jsp.buffer.size.zero=Buffer size = 0 +jsp.error.buffer.invalid=Invalid buffer size jsp.error.file.not.found=File \{0}\ not found jsp.message.copyinguri=Copying {0} into {1} jsp.message.htmlcomment=\nStripping Comment: \t{0} - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/10 10:21:32 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Added error codes Revision ChangesPath 1.91 +4 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.90 retrieving revision 1.91 diff -u -r1.90 -r1.91 --- messages.properties 8 Feb 2003 00:06:41 - 1.90 +++ messages.properties 10 Feb 2003 18:21:32 - 1.91 @@ -31,7 +31,7 @@ by jsp directive defined earlier: jsp.error.usebean.not.both=useBean: Can't specify both class and beanName attribute: jsp.error.usebean.bad.type.cast=useBean ({0}): Type ({1}) is not assignable from class ({2}) -jsp.error.invalid.scope=Invalid value of 'scope' attribute: {0} (must be one of \page\, \request\, \session\, or \application\) +jsp.error.invalid.scope=Illegal value of \'scope\' attribute: {0} (must be one of \page\, \request\, \session\, or \application\) jsp.error.classname=Can't determine classname from .class file jsp.warning.bad.type=Warning: bad type in .class file jsp.error.data.file.write=Error while writing data file @@ -151,6 +151,7 @@ jsp.error.parse.error.in.TLD=Parse Error in the tag library descriptor: {0} jsp.error.unable.to.open.TLD=Unable to open the tag library descriptor: {0} jsp.buffer.size.zero=Buffer size = 0 +jsp.error.buffer.invalid=Invalid buffer size jsp.error.file.not.found=File \{0}\ not found jsp.message.copyinguri=Copying {0} into {1} jsp.message.htmlcomment=\nStripping Comment: \t{0} @@ -314,6 +315,7 @@ jsp.error.scripting.variable.missing_name=Unable to determine scripting variable name from attribute {0} jasper.error.emptybodycontent.nonempty=According to TLD, tag {0} must be empty, but is not jsp.error.tagfile.var_name_given_equals_attr_name=In tag file {0}, the name-given attribute or the alias attribute ({1}) of a variable directive equals the name attribute of an attribute directive +jsp.error.page.noSession=Cannot access session scope in page that does not participate in any session jsp.error.useBean.noSession=Illegal for useBean to use session scope when JSP page declares (via page directive) that it does not participate in sessions jsp.error.xml.encodingByteOrderUnsupported = Given byte order for encoding \{0}\ is not supported. jsp.error.xml.encodingDeclInvalid = Invalid encoding name \{0}\. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/02/07 12:16:18 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Added translation error for invalid standard actions in XML syntax (translation error is already being thrown in standard syntax) Revision ChangesPath 1.37 +129 -111 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.36 retrieving revision 1.37 diff -u -r1.36 -r1.37 --- JspDocumentParser.java1 Feb 2003 02:41:13 - 1.36 +++ JspDocumentParser.java7 Feb 2003 20:16:18 - 1.37 @@ -221,9 +221,6 @@ Mark start = new Mark(path, locator.getLineNumber(), locator.getColumnNumber()); - Attributes attrsCopy = null; - - Node node = null; // XXX - As of JSP 2.0, xmlns: can appear in any node (not just // jsp:root). The spec still needs clarification here. @@ -231,6 +228,7 @@ // is valid from that point forward. Redefinitions cause an // error. This isn't quite consistent with how xmlns: normally // works. + Attributes attrsCopy = null; try { attrsCopy = addCustomTagLibraries(attrs); } catch (JasperException je) { @@ -239,108 +237,12 @@ locator, je ); } - if (qName.equals(JSP_ROOT)) { -// give the jsp:root element the original attributes set -// (attrs) instead of the copy without the xmlns: elements -// (attrsCopy) - node = new Node.JspRoot(new AttributesImpl(attrs), start, current); - if (isTop) { - pageInfo.setHasJspRoot(true); - } - } else if (qName.equals(JSP_PAGE_DIRECTIVE)) { - if (isTagFile) { - throw new SAXParseException( - Localizer.getMessage(jsp.error.action.istagfile, qName), - locator); - } - node = new Node.PageDirective(attrsCopy, start, current); - String imports = attrs.getValue(import); - // There can only be one 'import' attribute per page directive - if (imports != null) { - ((Node.PageDirective) node).addImport(imports); - } - } else if (qName.equals(JSP_INCLUDE_DIRECTIVE)) { - node = new Node.IncludeDirective(attrsCopy, start, current); - processIncludeDirective(attrsCopy.getValue(file), node); - } else if (qName.equals(JSP_DECLARATION)) { - node = new Node.Declaration(start, current); - } else if (qName.equals(JSP_SCRIPTLET)) { - node = new Node.Scriptlet(start, current); - } else if (qName.equals(JSP_EXPRESSION)) { - node = new Node.Expression(start, current); - } else if (qName.equals(JSP_USE_BEAN)) { - node = new Node.UseBean(attrsCopy, start, current); - } else if (qName.equals(JSP_SET_PROPERTY)) { - node = new Node.SetProperty(attrsCopy, start, current); - } else if (qName.equals(JSP_GET_PROPERTY)) { - node = new Node.GetProperty(attrsCopy, start, current); - } else if (qName.equals(JSP_INCLUDE)) { - node = new Node.IncludeAction(attrsCopy, start, current); - } else if (qName.equals(JSP_FORWARD)) { - node = new Node.ForwardAction(attrsCopy, start, current); - } else if (qName.equals(JSP_PARAM)) { - node = new Node.ParamAction(attrsCopy, start, current); - } else if (qName.equals(JSP_PARAMS)) { - node = new Node.ParamsAction(start, current); - } else if (qName.equals(JSP_PLUGIN)) { - node = new Node.PlugIn(attrsCopy, start, current); - } else if (qName.equals(JSP_TEXT)) { - node = new Node.JspText(start, current); - } else if (qName.equals(JSP_BODY)) { - node = new Node.JspBody(start, current); - } else if (qName.equals(JSP_ATTRIBUTE)) { - node = new Node.NamedAttribute(attrsCopy, start, current); - } else if (qName.equals(JSP_OUTPUT)) { - node = new Node.JspOutput(attrsCopy, start, current); - } else if (qName.equals(JSP_TAG_DIRECTIVE)) { - if (!isTagFile) { - throw new SAXParseException( - Localizer.getMessage(jsp.error.action.isnottagfile, - qName), - locator); - } - node = new Node.TagDirective(attrsCopy, start, current); - String imports = attrs.getValue(import); - // There can only be one 'import'
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2003/02/07 16:06:41 Modified:jasper2/src/share/org/apache/jasper Constants.java jasper2/src/share/org/apache/jasper/compiler Generator.java JspReader.java JspUtil.java Parser.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Implement \$ escape sequence in template text and attributes. - Rewrite template text parser. - Fix some minor bugs. Note: \$ escape sequence in JSP document (XML syntax) not implemented yet. Revision ChangesPath 1.13 +7 -0 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Constants.java Index: Constants.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Constants.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- Constants.java22 Jan 2003 21:13:50 - 1.12 +++ Constants.java8 Feb 2003 00:06:40 - 1.13 @@ -224,5 +224,12 @@ */ public static final String TEMP_VARIABLE_NAME_PREFIX = _jspx_temp; + +/** + * A replacement char for \$. + * XXX This is a hack to avoid changing EL interpreter to recognize \$ + */ +public static final char ESC='\u001b'; +public static final String ESCStr='\\u001b'; } 1.161 +15 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.160 retrieving revision 1.161 diff -u -r1.160 -r1.161 --- Generator.java5 Feb 2003 23:39:20 - 1.160 +++ Generator.java8 Feb 2003 00:06:40 - 1.161 @@ -786,9 +786,14 @@ if (attr.isExpression() || attr.isELInterpreterInput()) { if (attr.isELInterpreterInput()) { + boolean replaceESC = v.indexOf(Constants.ESC) 0; v = JspUtil.interpreterCall(this.isTagFile, - attr.getValue(), expectedType, defaultPrefix, + v, expectedType, defaultPrefix, _jspx_fnmap, false ); + // XXX ESC replacement hack + if (replaceESC) { + v = ( + v + ).replace( + Constants.ESCStr + , '$'); + } } if (encode) { return java.net.URLEncoder.encode(\\ + + v + ); @@ -2507,8 +2512,14 @@ } } else if (attr.isELInterpreterInput()) { // run attrValue through the expression interpreter + boolean replaceESC = attrValue.indexOf(Constants.ESC) 0; attrValue = JspUtil.interpreterCall(this.isTagFile, attrValue, c[0], n.getPrefix(), _jspx_fnmap, false ); + // XXX hack: Replace ESC with '$' + if (replaceESC) { + attrValue = ( + attrValue + ).replace( + + Constants.ESCStr + , '$'); + } } else { attrValue = convertString( c[0], attrValue, localName, 1.16 +9 -35 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspReader.java Index: JspReader.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspReader.java,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- JspReader.java3 Feb 2003 23:11:58 - 1.15 +++ JspReader.java8 Feb 2003 00:06:40 - 1.16 @@ -172,41 +172,12 @@ } /** - * Gets Content until the next potential JSP element. Because all elements - * begin with a 'lt;' we can just move until we see the next one. + * Back up the current cursor by one char, assumes current.cursor 0, + * and that the char to be pushed back is not '\n'. */ -String nextContent() { -int cur_cursor = current.cursor; - int len = current.stream.length; - char ch; - - if (peekChar() == '\n') { - current.line++; - current.col = 0; - } - else current.col++; - - // pure obsfuscated genius! -while ((++current.cursor len) - ((ch = current.stream[current.cursor]) != '')) { - - if (ch == '$') { - // XXX Make this backward compatible with JSP1.2. - if ((current.cursor+1 len) - current.stream[current.cursor+1]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_fr.properties
luehe 2003/02/03 12:11:43 Modified:jasper2/src/share/org/apache/jasper/compiler JspUtil.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_fr.properties Log: Fixed 16728: Translation error not raised of jsp:attribute is provided an invalid value to the 'scope' attribute Revision ChangesPath 1.29 +23 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspUtil.java Index: JspUtil.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspUtil.java,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- JspUtil.java 22 Jan 2003 20:08:24 - 1.28 +++ JspUtil.java 3 Feb 2003 20:11:41 - 1.29 @@ -225,6 +225,26 @@ } /** + * Checks to see if the given scope is valid. + * + * @param scope The scope to be checked + * @param n The Node containing the 'scope' attribute whose value is to be + * checked + * @param err error dispatcher + * + * @throws JasperException if scope is not null and different from + * quot;pagequot;, quot;requestquot;, quot;sessionquot;, and + * quot;applicationquot; + */ +public static void checkScope(String scope, Node n, ErrorDispatcher err) +throws JasperException { + if (scope != null !scope.equals(page) !scope.equals(request) + !scope.equals(session) !scope.equals(application)) { + err.jspError(n, jsp.error.invalid.scope, scope); + } +} + +/** * Checks if all mandatory attributes are present and if all attributes * present have valid names. Checks attributes specified as XML-style * attributes as well as attributes specified using the jsp:attribute 1.71 +12 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.70 retrieving revision 1.71 diff -u -r1.70 -r1.71 --- Validator.java27 Jan 2003 23:15:34 - 1.70 +++ Validator.java3 Feb 2003 20:11:42 - 1.71 @@ -542,6 +542,7 @@ String name = n.getTextAttribute (id); String scope = n.getTextAttribute (scope); + JspUtil.checkScope(scope, n, err); String className = n.getTextAttribute (class); String type = n.getTextAttribute (type); BeanRepository beanInfo = pageInfo.getBeanRepository(); @@ -941,6 +942,10 @@ public void visit(Node.InvokeAction n) throws JasperException { JspUtil.checkAttributes(Invoke, n, invokeAttrs, err); + + String scope = n.getTextAttribute (scope); + JspUtil.checkScope(scope, n, err); + if (n.getAttributeValue(var) != null n.getAttributeValue(varReader) != null) { err.jspError(n, jsp.error.invoke.varAndVarReader); @@ -950,6 +955,10 @@ public void visit(Node.DoBodyAction n) throws JasperException { JspUtil.checkAttributes(DoBody, n, doBodyAttrs, err); + + String scope = n.getTextAttribute (scope); + JspUtil.checkScope(scope, n, err); + if (n.getAttributeValue(var) != null n.getAttributeValue(varReader) != null) { err.jspError(n, jsp.error.doBody.varAndVarReader); 1.87 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.86 retrieving revision 1.87 diff -u -r1.86 -r1.87 --- messages.properties 1 Feb 2003 02:41:13 - 1.86 +++ messages.properties 3 Feb 2003 20:11:42 - 1.87 @@ -31,7 +31,7 @@ by jsp directive defined earlier: jsp.error.usebean.not.both=useBean: Can't specify both class and beanName attribute: jsp.error.usebean.bad.type.cast=useBean ({0}): Type ({1}) is not assignable from class ({2}) -jsp.error.usebean.invalid.scope=Invalid scope ({1}) in useBean: ({0}). +jsp.error.invalid.scope=Invalid value of 'scope' attribute: {0} (must be one of \page\, \request\, \session\, or \application\) jsp.error.classname=Can't determine classname from .class file jsp.warning.bad.type=Warning: bad type in .class file jsp.error.data.file.write=Error while writing data file
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/01/31 18:41:13 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - It is now illegal to have preludes and cods assoicated with a JSP document. Revision ChangesPath 1.36 +14 -29 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- JspDocumentParser.java22 Jan 2003 20:08:24 - 1.35 +++ JspDocumentParser.java1 Feb 2003 02:41:13 - 1.36 @@ -150,6 +150,17 @@ JspDocumentParser handler = new JspDocumentParser(pc, path, inStream, isTagFile, directivesOnly); + // It's an error to have a prelude or a coda associated with + // a JSP document + if (!handler.pageInfo.getIncludePrelude().isEmpty()) { + String file = (String) handler.pageInfo.getIncludePrelude().get(0); + handler.err.jspError(jsp.error.prelude.xml, path, file); + } + if (!handler.pageInfo.getIncludeCoda().isEmpty()) { + String file = (String) handler.pageInfo.getIncludeCoda().get(0); + handler.err.jspError(jsp.error.coda.xml, path, file); + } + Node.Nodes pageNodes = null; Node.JspRoot jspRoot = null; @@ -160,8 +171,6 @@ rootAttrs.addAttribute(, , version, CDATA, 2.0); jspRoot = new Node.JspRoot(rootAttrs, null, null); handler.current = jspRoot; - handler.addInclude(jspRoot, -handler.pageInfo.getIncludePrelude()); } else { handler.isTop = false; handler.current = parent; @@ -184,7 +193,6 @@ saxParser.parse(handler.inputSource, handler); if (parent == null) { - handler.addInclude(jspRoot, handler.pageInfo.getIncludeCoda()); // Create Node.Nodes from dummy (top-level) jsp:root pageNodes = new Node.Nodes(jspRoot); } else { @@ -729,29 +737,6 @@ } } } -} - -/* - * Processes the given list of included files. - * - * This is used to implement the include-prelude and include-coda - * subelements of the jsp-config element in web.xml - */ -private void addInclude(Node parent, List files) throws SAXException { -if (files != null) { -Iterator iter = files.iterator(); -while (iter.hasNext()) { -String file = (String) iter.next(); -AttributesImpl attrs = new AttributesImpl(); -attrs.addAttribute(, file, file, CDATA, file); - -// Create a dummy Include directive node -Node includeDir = new Node.IncludeDirective(attrs, - null, // XXX - parent); -processIncludeDirective(file, includeDir); -} -} } /* 1.86 +8 -6 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.85 retrieving revision 1.86 diff -u -r1.85 -r1.86 --- messages.properties 28 Jan 2003 00:13:38 - 1.85 +++ messages.properties 1 Feb 2003 02:41:13 - 1.86 @@ -354,8 +354,10 @@ jsp.error.tagfile.illegalPath=Illegal tag file path: {0}, must start with \/WEB-INF/tags\ or \/META-INF/tags\ jsp.error.plugin.wrongRootElement=Name of root element in {0} different from {1} jsp.error.attribute.invalidPrefix=The attribute prefix {0} does not correspond to any imported tag library -jsp.error.nested.jspattribute=a jsp:attribute standard action cannot be nested within another jsp:attribute standard action -jsp.error.nested.jspbody=a jsp:body standard action cannot be nested within another jsp:body or jsp:attribute standard action -jsp.error.variable.either.name=either name-given or name-from-attribute attribute must be specified in a variable directive
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
remm2003/01/22 03:55:41 Modified:jasper2/src/share/org/apache/jasper JspC.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Remove debug. - Add the compile command line swicth to the help. Revision ChangesPath 1.25 +3 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java Index: JspC.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- JspC.java 22 Jan 2003 11:40:00 - 1.24 +++ JspC.java 22 Jan 2003 11:55:40 - 1.25 @@ -594,7 +594,6 @@ new Object[] {fne.getMessage()}, Logger.WARNING); throw new JasperException( fne ); } catch (Exception e) { -e.printStackTrace(); Constants.message(jspc.error.generalException, new Object[] {file, e}, Logger.ERROR); if ( listErrors ) { 1.81 +7 -6 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.80 retrieving revision 1.81 diff -u -r1.80 -r1.81 --- messages.properties 17 Jan 2003 20:03:10 - 1.80 +++ messages.properties 22 Jan 2003 11:55:40 - 1.81 @@ -191,17 +191,18 @@ \-dd dir Literal Output Directory. (package dirs will not be made)\n\ \-l Outputs the name of the JSP page upon failure\n\ \-s Outputs the name of the JSP page upon success\n\ -\-p name Name of target package\n\ +\-p name Name of target package (default is org.apache.jsp).\n\ \-c name Name of target class name\n\ -\(only applies to first JSP page)\n\ -\-mapped Generate separate write() calls for each HTML line in the JSP\n\ +\(only applies to first JSP page).\n\ +\-mapped Generate separate write() calls for each HTML line in the JSP.\n\ \-die[#] Generate an error return code (#) on fatal errors.\n\ \If the number is absent or unparsable it defaults to 1.\n\ \-uribase dir The uri directory compilations should be relative to\n\ -\(Default is /)\n\ +\(Default is /).\n\ \-uriroot dir The root directory that uri files should be resolved\n\ \against, (Default is the directory jspc is invoked from)\n\ -\-webinc file Creates partial servlet mappings for the -webapp option\n\ +\-compileCompile generated servlets.\n\ +\-webinc file Creates partial servlet mappings for the -webapp option.\n\ \-webxml file Creates a complete web.xml when using the -webapp option.\n\ \-ieplugin clsid Java Plugin classid for Internet Explorer\n\ \-sax2 driverclassname Driver class name for the SAX 2.0 parser to be used\n\ -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/01/22 13:06:45 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Minor error code cleanup Revision ChangesPath 1.34 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- TagLibraryInfoImpl.java 22 Jan 2003 20:08:24 - 1.33 +++ TagLibraryInfoImpl.java 22 Jan 2003 21:06:44 - 1.34 @@ -305,7 +305,7 @@ // Recognized but ignored } else { if (log.isWarnEnabled()) { - log.warn(Localizer.getMessage(jsp.warning.unknown.element.in.TLD, + log.warn(Localizer.getMessage(jsp.warning.unknown.element.in.taglib, tname)); } } 1.83 +8 -8 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.82 retrieving revision 1.83 diff -u -r1.82 -r1.83 --- messages.properties 22 Jan 2003 20:08:24 - 1.82 +++ messages.properties 22 Jan 2003 21:06:45 - 1.83 @@ -138,13 +138,13 @@ jsp.warning.reloading=Warning: Invalid value for the initParam reloading. Will use the default value of \true\ jsp.error.badtaglib=Unable to open taglibrary {0} : {1} jsp.error.badGetReader=Cannot create a reader when the stream is not buffered -jsp.warning.unknown.element.in.TLD=Unknown element {0} in TLD -jsp.warning.unknown.element.in.tag=Unknown element {0} in lt;taggt; -jsp.warning.unknown.element.in.attribute=Unknown element {0} in lt;attributegt; -jsp.warning.unknown.element.in.variable=Unknown element {0} in lt;variablegt; -jsp.warning.unknown.element.in.validator=Unknown element {0} in lt;validatorgt; -jsp.warning.unknown.element.in.initParam=Unknown element {0} in validator's lt;init-paramgt; -jsp.warning.unknown.element.in.function=Unknown element {0} in lt;functiongt; +jsp.warning.unknown.element.in.taglib=Unknown element ({0}) in taglib +jsp.warning.unknown.element.in.tag=Unknown element ({0}) in tag +jsp.warning.unknown.element.in.attribute=Unknown element ({0}) in attribute +jsp.warning.unknown.element.in.variable=Unknown element ({0}) in variable +jsp.warning.unknown.element.in.validator=Unknown element ({0}) in validator +jsp.warning.unknown.element.in.initParam=Unknown element ({0}) in validator's init-param +jsp.warning.unknown.element.in.function=Unknown element ({0}) in function jsp.error.more.than.one.taglib=More than one taglib in the TLD: {0} jsp.error.teiclass.instantiation=Failed to load or instantiate TagExtraInfo class: {0} jsp.error.non_null_tei_and_var_subelems=Tag {0} has one or more variable subelements and a TagExtraInfo class that returns one or more VariableInfo -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/01/17 12:03:10 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Escape '' Revision ChangesPath 1.80 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.79 retrieving revision 1.80 diff -u -r1.79 -r1.80 --- messages.properties 13 Jan 2003 23:50:48 - 1.79 +++ messages.properties 17 Jan 2003 20:03:10 - 1.80 @@ -274,7 +274,7 @@ jsp.error.empty.body.not.allowed=Empty body not allowed for {0} jsp.error.jspbody.required=Must use jsp:body to specify tag body for {0} if jsp:attribute is used. jsp.error.jspbody.emptybody.only=The {0} tag can only have jsp:attribute in its body. -jsp.error.no.scriptlets=Scripting elements ( %!, jsp:declaration, %=, jsp:expression, %, jsp:scriptlet ) are disallowed here. +jsp.error.no.scriptlets=Scripting elements ( lt;%!, lt;jsp:declaration, lt;%=, lt;jsp:expression, lt;%, lt;jsp:scriptlet ) are disallowed here. jsp.error.internal.unexpected_node_type=Internal Error: Unexpected node type encountered jsp.error.tld.fn.invalid.signature=Invalid syntax for function signature in TLD. Tag Library: {0}, Function: {1} jsp.error.tld.fn.duplicate.name=Duplicate function name {0} in tag library {1} -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/01/13 15:50:48 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Fix 15851, 16027, and 1600: output appropiate message when a jsp:attribute or jsp:body is nested in another jsp:attribute or jsp:body. Revision ChangesPath 1.56 +14 -9 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.55 retrieving revision 1.56 diff -u -r1.55 -r1.56 --- Parser.java 11 Jan 2003 00:51:36 - 1.55 +++ Parser.java 13 Jan 2003 23:50:48 - 1.56 @@ -1568,10 +1568,6 @@ err.jspError( reader.mark(), jsp.error.not.in.template, Expression language ); } else if (reader.matches(jsp:)) { -if ((parent instanceof Node.NamedAttribute) -reader.matches(attribute)) { -err.jspError(reader.mark(), jsp.error.nested.jspattribute); -} err.jspError( reader.mark(), jsp.error.not.in.template, Standard actions ); } else if (parseCustomTag(parent)) { @@ -1651,6 +1647,16 @@ return; } +// Check for nested jsp:body or jsp:attribute +if (tag.equals(jsp:body) || tag.equals(jsp:attribute)) { +if (reader.matches(jsp:attribute)) { +err.jspError(reader.mark(), jsp.error.nested.jspattribute); +} +else if (reader.matches(jsp:body)) { +err.jspError(reader.mark(), jsp.error.nested.jspbody); +} +} + if( bodyType.equalsIgnoreCase( TagInfo.BODY_CONTENT_JSP ) ) { parseElements( parent ); } @@ -1696,8 +1702,7 @@ reader.skipSpaces(); } parseBody(namedAttributeNode, jsp:attribute, - getAttributeBodyType(parent, -attrs.getValue(name))); + TagInfo.BODY_CONTENT_JSP); if (namedAttributeNode.isTrim()) { Node.Nodes subElems = namedAttributeNode.getBody(); if (subElems != null) { 1.79 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.78 retrieving revision 1.79 diff -u -r1.78 -r1.79 --- messages.properties 11 Jan 2003 00:11:06 - 1.78 +++ messages.properties 13 Jan 2003 23:50:48 - 1.79 @@ -351,3 +351,4 @@ jsp.error.plugin.wrongRootElement=Name of root element in {0} different from {1} jsp.error.attribute.invalidPrefix=The attribute prefix {0} does not correspond to any imported tag library jsp.error.nested.jspattribute=a jsp:attribute standard action cannot be nested within another jsp:attribute standard action +jsp.error.nested.jspbody=a jsp:body standard action cannot be nested within another jsp:body or jsp:attribute standard action 1.28 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- messages_es.properties11 Jan 2003 00:11:06 - 1.27 +++ messages_es.properties13 Jan 2003 23:50:48 - 1.28 @@ -259,3 +259,4 @@ jsp.error.xml.invalidHighSurrogate= jsp.error.attributes.not.allowed= jsp.error.nested.jspattribute= +jsp.error.nested.jspbody= 1.11 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- messages_fr.properties11 Jan
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
kinman 2003/01/10 16:11:06 Modified:jasper2/src/share/org/apache/jasper/compiler Node.java Parser.java TagPluginManager.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Fix 15851: nested jsp:attribute should be disallowed. Revision ChangesPath 1.52 +11 -8 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java Index: Node.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java,v retrieving revision 1.51 retrieving revision 1.52 diff -u -r1.51 -r1.52 --- Node.java 8 Jan 2003 18:42:43 - 1.51 +++ Node.java 11 Jan 2003 00:11:06 - 1.52 @@ -1333,11 +1333,14 @@ } childInfo = new ChildInfo(); name = this.getAttributeValue(name); - localName = name; - int index = name.indexOf(':'); - if (index != -1) { - prefix = name.substring(0, index); - localName = name.substring(index+1); +if (name != null) { +// Mandatary attribute name will be checked in Validator + localName = name; + int index = name.indexOf(':'); + if (index != -1) { + prefix = name.substring(0, index); + localName = name.substring(index+1); +} } } 1.54 +7 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.53 retrieving revision 1.54 diff -u -r1.53 -r1.54 --- Parser.java 9 Jan 2003 23:54:40 - 1.53 +++ Parser.java 11 Jan 2003 00:11:06 - 1.54 @@ -1568,6 +1568,10 @@ err.jspError( reader.mark(), jsp.error.not.in.template, Expression language ); } else if (reader.matches(jsp:)) { +if ((parent instanceof Node.NamedAttribute) +reader.matches(attribute)) { +err.jspError(reader.mark(), jsp.error.nested.jspattribute); +} err.jspError( reader.mark(), jsp.error.not.in.template, Standard actions ); } else if (parseCustomTag(parent)) { 1.10 +5 -8 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagPluginManager.java Index: TagPluginManager.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagPluginManager.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- TagPluginManager.java 1 Jan 2003 12:25:58 - 1.9 +++ TagPluginManager.java 11 Jan 2003 00:11:06 - 1.10 @@ -99,12 +99,9 @@ page.visit(new Node.Visitor() { public void visit(Node.CustomTag n) -throws JasperException { +throws JasperException { invokePlugin(n); -Node.Nodes body = n.getBody(); -if (body != null) { -body.visit(this); -} +visitBody(n); } }); 1.78 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.77 retrieving revision 1.78 diff -u -r1.77 -r1.78 --- messages.properties 9 Jan 2003 23:54:40 - 1.77 +++ messages.properties 11 Jan 2003 00:11:06 - 1.78 @@ -350,3 +350,4 @@ jsp.error.tagfile.illegalPath=Illegal tag file path: {0}, must start with \/WEB-INF/tags\ or \/META-INF/tags\ jsp.error.plugin.wrongRootElement=Name of root element in {0} different from {1} jsp.error.attribute.invalidPrefix=The attribute prefix {0} does not correspond to any imported tag library +jsp.error.nested.jspattribute=a jsp:attribute standard action cannot be nested within another jsp:attribute standard action 1.27 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file:
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2003/01/09 15:54:41 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 15937: Misleading error message produced if jsp:body is not a child of a standard or custom action. Revision ChangesPath 1.53 +5 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.52 retrieving revision 1.53 diff -u -r1.52 -r1.53 --- Parser.java 18 Dec 2002 23:18:21 - 1.52 +++ Parser.java 9 Jan 2003 23:54:40 - 1.53 @@ -1196,6 +1196,8 @@ parseElement(parent); } else if (reader.matches(attribute)) { err.jspError(start, jsp.error.namedAttribute.invalidUse); + } else if (reader.matches(body)) { + err.jspError(start, jsp.error.jspbody.invalidUse); } else if (reader.matches(fallback)) { err.jspError(start, jsp.error.fallback.invalidUse); } else if (reader.matches(params)) { 1.77 +3 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.76 retrieving revision 1.77 diff -u -r1.76 -r1.77 --- messages.properties 3 Jan 2003 13:26:44 - 1.76 +++ messages.properties 9 Jan 2003 23:54:40 - 1.77 @@ -106,7 +106,8 @@ jsp.error.param.invalidUse=The jsp:param action must not be used outside the jsp:include, jsp:forward, or jsp:params elements jsp.error.params.invalidUse=jsp:params must be a direct child of jsp:plugin jsp.error.fallback.invalidUse=jsp:fallback must be a direct child of jsp:plugin -jsp.error.namedAttribute.invalidUse=jsp:attribute must be a sublement of a standard or custom action +jsp.error.namedAttribute.invalidUse=jsp:attribute must be the subelement of a standard or custom action +jsp.error.jspbody.invalidUse=jsp:body must be the subelement of a standard or custom action jsp.error.closeindividualparam=param tag needs to be closed with \/\ jsp.error.closeparams=param tag needs to be closed with /params jsp.error.params.emptyBody=jsp:params must contain at least one nested jsp:param -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
glenn 2003/01/03 05:26:28 Modified:jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties Log: Add message for fork init param Revision ChangesPath No revision No revision 1.9.2.6 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.9.2.5 retrieving revision 1.9.2.6 diff -u -r1.9.2.5 -r1.9.2.6 --- messages.properties 6 Nov 2002 23:00:40 - 1.9.2.5 +++ messages.properties 3 Jan 2003 13:26:28 - 1.9.2.6 @@ -119,6 +119,7 @@ jsp.warning.classDebugInfo=Warning: Invalid value for the initParam classdebuginfo. Will use the default value of \false\ jsp.warning.checkInterval=Warning: Invalid value for the initParam checkInterval. Will use the default value of \300\ seconds jsp.warning.development=Warning: Invalid value for the initParam development. Will use the default value of \true\ +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.error.badtaglib=Unable to open taglibrary {0} : {1} jsp.error.badGetReader=Cannot create a reader when the stream is not buffered -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
glenn 2003/01/03 05:26:44 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Add message for fork init param Revision ChangesPath 1.76 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.75 retrieving revision 1.76 diff -u -r1.75 -r1.76 --- messages.properties 18 Dec 2002 17:37:50 - 1.75 +++ messages.properties 3 Jan 2003 13:26:44 - 1.76 @@ -133,6 +133,7 @@ jsp.warning.classDebugInfo=Warning: Invalid value for the initParam classdebuginfo. Will use the default value of \false\ jsp.warning.checkInterval=Warning: Invalid value for the initParam checkInterval. Will use the default value of \300\ seconds jsp.warning.development=Warning: Invalid value for the initParam development. Will use the default value of \true\ +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.error.badtaglib=Unable to open taglibrary {0} : {1} jsp.error.badGetReader=Cannot create a reader when the stream is not buffered -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/18 09:37:50 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 15411: A translation error does not occur if jsp:attribute is used to provide an attribute value for an XML element that should be conisdered template text. Revision ChangesPath 1.51 +9 -8 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.50 retrieving revision 1.51 diff -u -r1.50 -r1.51 --- Parser.java 16 Dec 2002 23:02:39 - 1.50 +++ Parser.java 18 Dec 2002 17:37:50 - 1.51 @@ -1190,7 +1190,7 @@ } else if (reader.matches(element)) { parseElement(parent); } else if (reader.matches(attribute)) { - err.jspError(start, jsp.error.attribute.invalidUse); + err.jspError(start, jsp.error.namedAttribute.invalidUse); } else if (reader.matches(fallback)) { err.jspError(start, jsp.error.fallback.invalidUse); } else if (reader.matches(params)) { @@ -1317,12 +1317,13 @@ // Note except for the beginning of a page, the current char is ''. // Quoting in template text is handled here. // JSP2.6 A literal % is quoted by \% + String templateText = null; if (reader.matches(\\%)) { - String content = reader.nextContent(); - new Node.TemplateText(% + content, start, parent); - } else { - new Node.TemplateText(reader.nextContent(), start, parent); + templateText = %; } + String content = reader.nextContent(); + templateText = (templateText == null) ? content : templateText+content; + new Node.TemplateText(templateText, start, parent); } /* 1.63 +9 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.62 retrieving revision 1.63 diff -u -r1.62 -r1.63 --- Validator.java16 Dec 2002 17:34:32 - 1.62 +++ Validator.java18 Dec 2002 17:37:50 - 1.63 @@ -656,6 +656,12 @@ } } + public void visit(Node.UninterpretedTag n) throws JasperException { +if (n.getNamedAttributeNodes() != null) { + err.jspError(n, jsp.error.namedAttribute.invalidUse); +} +} + public void visit(Node.CustomTag n) throws JasperException { TagInfo tagInfo = n.getTagInfo(); if (tagInfo == null) { 1.75 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.74 retrieving revision 1.75 diff -u -r1.74 -r1.75 --- messages.properties 16 Dec 2002 22:21:16 - 1.74 +++ messages.properties 18 Dec 2002 17:37:50 - 1.75 @@ -106,7 +106,7 @@ jsp.error.param.invalidUse=The jsp:param action must not be used outside the jsp:include, jsp:forward, or jsp:params elements jsp.error.params.invalidUse=jsp:params must be a direct child of jsp:plugin jsp.error.fallback.invalidUse=jsp:fallback must be a direct child of jsp:plugin -jsp.error.attribute.invalidUse=jsp:attribute must be a sublement of a standard or custom action +jsp.error.namedAttribute.invalidUse=jsp:attribute must be a sublement of a standard or custom action jsp.error.closeindividualparam=param tag needs to be closed with \/\ jsp.error.closeparams=param tag needs to be closed with /params jsp.error.params.emptyBody=jsp:params must contain at least one nested jsp:param -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/16 14:21:17 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 15410: if the jsp:attribute action is used out of the spec'd context, a misleading error message is generated. Revision ChangesPath 1.49 +5 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- Parser.java 16 Dec 2002 17:34:32 - 1.48 +++ Parser.java 16 Dec 2002 22:21:15 - 1.49 @@ -1173,6 +1173,8 @@ parsePlugin(parent); } else if (reader.matches(element)) { parseElement(parent); + } else if (reader.matches(attribute)) { + err.jspError(start, jsp.error.attribute.invalidUse); } else if (reader.matches(fallback)) { err.jspError(start, jsp.error.fallback.invalidUse); } else if (reader.matches(params)) { 1.74 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.73 retrieving revision 1.74 diff -u -r1.73 -r1.74 --- messages.properties 16 Dec 2002 20:39:17 - 1.73 +++ messages.properties 16 Dec 2002 22:21:16 - 1.74 @@ -106,6 +106,7 @@ jsp.error.param.invalidUse=The jsp:param action must not be used outside the jsp:include, jsp:forward, or jsp:params elements jsp.error.params.invalidUse=jsp:params must be a direct child of jsp:plugin jsp.error.fallback.invalidUse=jsp:fallback must be a direct child of jsp:plugin +jsp.error.attribute.invalidUse=jsp:attribute must be a sublement of a standard or custom action jsp.error.closeindividualparam=param tag needs to be closed with \/\ jsp.error.closeparams=param tag needs to be closed with /params jsp.error.params.emptyBody=jsp:params must contain at least one nested jsp:param -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/13 08:27:43 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 15355: If a jsp:params element (nested within a jsp:plugin element) has no nested jsp:param elements, a translation error is not generated. Revision ChangesPath 1.60 +19 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.59 retrieving revision 1.60 diff -u -r1.59 -r1.60 --- Validator.java13 Dec 2002 15:55:34 - 1.59 +++ Validator.java13 Dec 2002 16:27:43 - 1.60 @@ -486,6 +486,22 @@ visitBody(n); } + public void visit(Node.ParamsAction n) throws JasperException { + // Make sure we've got at least one nested jsp:param +Node.Nodes subElems = n.getBody(); +if (subElems == null) { + err.jspError(n, jsp.error.params.emptyBody); + } + for (int i=0; isubElems.size(); i++) { + Node subElem = subElems.getNode(i); + if (!(subElem instanceof Node.ParamAction)) { + err.jspError(n, jsp.error.params.illegalChild); +} +} + +visitBody(n); + } + public void visit(Node.IncludeAction n) throws JasperException { JspUtil.checkAttributes(Include action, n, includeActionAttrs, err); 1.71 +5 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.70 retrieving revision 1.71 diff -u -r1.70 -r1.71 --- messages.properties 12 Dec 2002 22:57:43 - 1.70 +++ messages.properties 13 Dec 2002 16:27:43 - 1.71 @@ -104,9 +104,12 @@ jsp.error.overflow=Error: JSP Buffer overflow jsp.error.paramexpected=Expected \param\ tag with \name\ and \value\ attributes jsp.error.param.invalidUse=The jsp:param action must not be used outside the jsp:include, jsp:forward, or jsp:params elements -jsp.error.params.invalidUse=The jsp:params action must be a direct child of jsp:plugin +jsp.error.params.invalidUse=jsp:params must be a direct child of jsp:plugin +jsp.error.fallback.invalidUse=jsp:fallback must be a direct child of jsp:plugin jsp.error.closeindividualparam=param tag needs to be closed with \/\ jsp.error.closeparams=param tag needs to be closed with /params +jsp.error.params.emptyBody=jsp:params must contain at least one nested jsp:param +jsp.error.params.illegalChild=jsp:params must not have any nested elements other than jsp:param jsp.error.plugin.notype=type not declared in jsp:plugin jsp.error.plugin.badtype=Illegal value for 'type' attribute in jsp:plugin: must be 'bean' or 'applet' jsp.error.plugin.nocode=code not declared in jsp:plugin -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/12 09:44:38 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Removed support for tag file paths relative to TLD, until they are supported by the spec. Tag file paths must start with /WEB-INF/tags or /META-INF/tags. Revision ChangesPath 1.28 +6 -13 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- TagLibraryInfoImpl.java 28 Nov 2002 04:18:08 - 1.27 +++ TagLibraryInfoImpl.java 12 Dec 2002 17:44:38 - 1.28 @@ -436,18 +436,11 @@ } } -path = path.replace('\\', '/'); - if (!path.startsWith(/)) { - // Tag file path is relative to uri of TLD file -path = uri.substring(0, uri.lastIndexOf(/) + 1) + path; - try { - path = new File(path).getCanonicalPath(); - } catch (IOException ioe) { - throw new JasperException(ioe); - } - } else if (path.startsWith(/META-INF/tags)) { + if (path.startsWith(/META-INF/tags)) { // Tag file packaged in JAR ctxt.getTagFileJars().put(path, jarFile); + } else if (!path.startsWith(/WEB-INF/tags)) { + err.jspError(jsp.error.tagfile.illegalPath, path); } TagInfo tagInfo = TagFileProcessor.parseTagFile(parserController, 1.68 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.67 retrieving revision 1.68 diff -u -r1.67 -r1.68 --- messages.properties 10 Dec 2002 21:33:36 - 1.67 +++ messages.properties 12 Dec 2002 17:44:38 - 1.68 @@ -339,6 +339,6 @@ jsp.error.multiple.jspoutput = Cannot have multiple occurrences of lt;jsp:outputgt; jsp.error.attributes.not.allowed = {0} must not have any attributes jsp.error.tagfile.badSuffix=Missing \.tag\ suffix in tag file path {0} -jsp.error.tagfile.illegalPath=Missing \/WEB-INF/tags\ or \/META-INF/tags\ in tag file path {0} +jsp.error.tagfile.illegalPath=Illegal tag file path: {0}, must start with \/WEB-INF/tags\ or \/META-INF/tags\ jsp.error.plugin.wrongRootElement=Name of root element in {0} different from {1} jsp.error.attribute.invalidPrefix=The attribute prefix {0} does not correspond to any imported tag library -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
luehe 2002/12/12 14:30:30 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Added error message for jsp.error.plugin.badtype error code Revision ChangesPath 1.69 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.68 retrieving revision 1.69 diff -u -r1.68 -r1.69 --- messages.properties 12 Dec 2002 17:44:38 - 1.68 +++ messages.properties 12 Dec 2002 22:30:30 - 1.69 @@ -107,8 +107,8 @@ jsp.error.closeindividualparam=param tag needs to be closed with \/\ jsp.error.closeparams=param tag needs to be closed with /params jsp.error.plugin.notype=type not declared in jsp:plugin +jsp.error.plugin.badtype=Illegal value for 'type' attribute in jsp:plugin: must be 'bean' or 'applet' jsp.error.plugin.nocode=code not declared in jsp:plugin -jsp.error.plugin.notclosed=jsp:plugin not closed jsp.error.ise_on_clear=Illegal to clear() when buffer size == 0 jsp.error.setproperty.beanNotFound=setProperty: Bean {0} not found jsp.error.getproperty.beanNotFound=getProperty: Bean {0} not found 1.26 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- messages_es.properties9 Dec 2002 23:27:03 - 1.25 +++ messages_es.properties12 Dec 2002 22:30:30 - 1.26 @@ -86,7 +86,6 @@ jsp.error.closeparams=el tag param necesita ser cerrado con /params jsp.error.plugin.notype=tipo no declarado en jsp:plugin jsp.error.plugin.nocode=codigo no declarado en jsp:plugin -jsp.error.plugin.notclosed=jsp:plugin no cerrado jsp.error.ise_on_clear=Es ilegal usar clear() cuando el tamaño del buffer es 0 jsp.error.setproperty.beanNotFound=setProperty: Bean {0} no encontrado jsp.error.getproperty.beanNotFound=getProperty: Bean {0} no encontrado 1.9 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- messages_fr.properties9 Dec 2002 23:27:03 - 1.8 +++ messages_fr.properties12 Dec 2002 22:30:30 - 1.9 @@ -107,7 +107,6 @@ jsp.error.closeparams=Le tag param tag doit être fermé avec /params jsp.error.plugin.notype=type non déclaré dans jsp:plugin jsp.error.plugin.nocode=code non déclaré dans jsp:plugin -jsp.error.plugin.notclosed=jsp:plugin non fermé jsp.error.ise_on_clear=Il est interdit d''utiliser clear() quand la taille de tampon== 0 jsp.error.setproperty.beanNotFound=setProperty: le Bean {0} est introuvable jsp.error.getproperty.beanNotFound=getProperty: le Bean {0} est introuvable 1.26 +1 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties Index: messages_ja.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- messages_ja.properties9 Dec 2002 23:27:03 - 1.25 +++ messages_ja.properties12 Dec 2002 22:30:30 - 1.26 @@ -98,7 +98,6 @@ jsp.error.closeparams=param\u30bf\u30b0\u306f/params\u3067\u9589\u3058\u306a\u3051\u308c\u3070\u3044\u3051\u307e\u305b\u3093 jsp.error.plugin.notype=jsp:plugin\u3067type\u5c5e\u6027\u304c\u5ba3\u8a00\u3055\u308c\u3066\u3044\u307e\u305b\u3093 jsp.error.plugin.nocode=jsp:plugin\u3067code\u5c5e\u6027\u304c\u5ba3\u8a00\u3055\u308c\u3066\u3044\u307e\u305b\u3093 -jsp.error.plugin.notclosed=jsp:plugin\u304c\u9589\u3058\u3066\u3044\u307e\u305b\u3093 jsp.error.ise_on_clear=\u30d0\u30c3\u30d5\u30a1\u30b5\u30a4\u30ba\u304c0\u306e\u6642\u306bclear()\u3092\u5b9f\u884c\u3057\u3066\u3082\u7121\u52b9\u3067\u3059 jsp.error.setproperty.beanNotFound=setProperty: Bean {0} \u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/12 14:57:43 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed 15338: jsp:params action used outside of the expected context yields misleading error message. Revision ChangesPath 1.45 +5 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.44 retrieving revision 1.45 diff -u -r1.44 -r1.45 --- Parser.java 12 Dec 2002 03:30:58 - 1.44 +++ Parser.java 12 Dec 2002 22:57:43 - 1.45 @@ -1196,6 +1196,8 @@ parsePlugin(parent); } else if (reader.matches(element)) { parseElement(parent); + } else if (reader.matches(params)) { + err.jspError(start, jsp.error.params.invalidUse); } else if (reader.matches(param)) { err.jspError(start, jsp.error.param.invalidUse); } else { 1.70 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.69 retrieving revision 1.70 diff -u -r1.69 -r1.70 --- messages.properties 12 Dec 2002 22:30:30 - 1.69 +++ messages.properties 12 Dec 2002 22:57:43 - 1.70 @@ -104,6 +104,7 @@ jsp.error.overflow=Error: JSP Buffer overflow jsp.error.paramexpected=Expected \param\ tag with \name\ and \value\ attributes jsp.error.param.invalidUse=The jsp:param action must not be used outside the jsp:include, jsp:forward, or jsp:params elements +jsp.error.params.invalidUse=The jsp:params action must be a direct child of jsp:plugin jsp.error.closeindividualparam=param tag needs to be closed with \/\ jsp.error.closeparams=param tag needs to be closed with /params jsp.error.plugin.notype=type not declared in jsp:plugin -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/10 13:33:36 Modified:jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed dynamic attribute bug for XML syntax. Revision ChangesPath 1.32 +7 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- JspDocumentParser.java5 Dec 2002 17:56:43 - 1.31 +++ JspDocumentParser.java10 Dec 2002 21:33:35 - 1.32 @@ -169,6 +169,10 @@ // Use the default (non-validating) parser SAXParserFactory factory = SAXParserFactory.newInstance(); + factory.setNamespaceAware(true); + // Preserve xmlns attributes + factory.setFeature(http://xml.org/sax/features/namespace-prefixes;, +true); // Configure the parser SAXParser saxParser = factory.newSAXParser(); 1.67 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.66 retrieving revision 1.67 diff -u -r1.66 -r1.67 --- messages.properties 9 Dec 2002 23:27:03 - 1.66 +++ messages.properties 10 Dec 2002 21:33:36 - 1.67 @@ -289,7 +289,7 @@ jsp.error.unknown_attribute_type=Unknown attribute type ({1}) for attribute {0}. jsp.error.jspelement.missing.name=Mandatory attribute 'name' missing in jsp:element jsp.error.xmlns.redefinition.notimplemented=Internal error: Attempt to redefine xmlns:{0}. Redefinition of namespaces is not implemented. -jsp.error.could.not.add.taglibraries=Could not add tag one or more libraries. +jsp.error.could.not.add.taglibraries=Could not add one or more tag libraries. jsp.error.duplicate.name.jspattribute=The attribute {0} specified in the standard or custom action also appears as the value of the name attribute in the enclosed jsp:attribute jsp.error.not.in.template={0} not allowed in a template text body. jsp.error.badStandardAction=The action is not a recognizable standard action. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_fr.properties
luehe 2002/12/09 14:17:32 Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_fr.properties Log: Fixed Bugzilla 15189: Error message provided when jsp:param element is not used properly is misleading Revision ChangesPath 1.43 +9 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- Parser.java 9 Dec 2002 21:51:56 - 1.42 +++ Parser.java 9 Dec 2002 22:17:32 - 1.43 @@ -1165,7 +1165,7 @@ *| 'plugin'StdActionContent *| 'element' StdActionContent */ -private void parseAction(Node parent) throws JasperException { +private void parseStandardAction(Node parent) throws JasperException { Mark start = reader.mark(); if (reader.matches(include)) { @@ -1196,8 +1196,10 @@ parsePlugin(parent); } else if (reader.matches(element)) { parseElement(parent); + } else if (reader.matches(param)) { + err.jspError(start, jsp.error.param.invalidUse); } else { - err.jspError(start, jsp.error.badaction); + err.jspError(start, jsp.error.badStandardAction); } } @@ -1447,7 +1449,7 @@ } else if (reader.matches(${)) { parseELExpression(parent); } else if (reader.matches(jsp:)) { - parseAction(parent); + parseStandardAction(parent); } else if (!parseCustomTag(parent)) { parseTemplateText(parent); } @@ -1501,7 +1503,7 @@ } else if (reader.matches(${)) { parseELExpression(parent); } else if (reader.matches(jsp:)) { - parseAction(parent); + parseStandardAction(parent); } else if (!parseCustomTag(parent)) { parseTemplateText(parent); } 1.65 +4 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.64 retrieving revision 1.65 diff -u -r1.64 -r1.65 --- messages.properties 6 Dec 2002 19:11:53 - 1.64 +++ messages.properties 9 Dec 2002 22:17:32 - 1.65 @@ -103,6 +103,7 @@ jsp.error.attempt_to_clear_flushed_buffer=Error: Attempt to clear a buffer that's already been flushed jsp.error.overflow=Error: JSP Buffer overflow jsp.error.paramexpected=Expected \param\ tag with \name\ and \value\ attributes +jsp.error.param.invalidUse=The jsp:param action must not be used outside the jsp:include, jsp:forward, or jsp:params elements jsp.error.closeindividualparam=param tag needs to be closed with \/\ jsp.error.closeparams=param tag needs to be closed with /params jsp.error.plugin.notype=type not declared in jsp:plugin @@ -291,7 +292,7 @@ jsp.error.could.not.add.taglibraries=Could not add tag one or more libraries. jsp.error.duplicate.name.jspattribute=The attribute {0} specified in the standard or custom action also appears as the value of the name attribute in the enclosed jsp:attribute jsp.error.not.in.template={0} not allowed in a template text body. -jsp.error.badaction=The action is not a recognizable standard action. +jsp.error.badStandardAction=The action is not a recognizable standard action. jsp.error.tagdirective.badbodycontent=Invalid body-content ({0}) in tag directive jsp.error.page.config_pagedir_encoding_conflict=Page-encoding specified in jsp-property-group ({0}) is different from that specified in page directive ({1}) jsp.error.page.prolog_pagedir_encoding_conflict=Page-encoding specified in XML prolog ({0}) is different from that specified in page directive ({1}) @@ -339,3 +340,4 @@ jsp.error.tagfile.badSuffix=Missing \.tag\ suffix in tag file path {0} jsp.error.tagfile.illegalPath=Missing \/WEB-INF/tags\ or \/META-INF/tags\ in tag file path {0} jsp.error.plugin.wrongRootElement=Name of root element in {0} different from {1} +jsp.error.attribute.invalidPrefix=The attribute prefix {0} does not correspond to any imported tag library 1.7 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file:
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
luehe 2002/12/09 15:27:04 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Fixed Bugtraq 4790760: A translation-time error is not generated if the 'name' attribute of jsp:param is an expression Revision ChangesPath 1.57 +12 -5 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.56 retrieving revision 1.57 diff -u -r1.56 -r1.57 --- Validator.java9 Dec 2002 22:26:10 - 1.56 +++ Validator.java9 Dec 2002 23:27:03 - 1.57 @@ -476,6 +476,13 @@ public void visit(Node.ParamAction n) throws JasperException { JspUtil.checkAttributes(Param action, n, paramActionAttrs, err); + // make sure the value of the 'name' attribute is not a + // request-time expression + if (isExpression(n, n.getAttributes().getValue(name))) { + err.jspError(n, + jsp.error.attribute.standard.non_rt_with_expr, + name, jsp:param); + } n.setValue(getJspAttribute(value, null, null, n.getAttributeValue(value), java.lang.String.class, null, @@ -739,7 +746,7 @@ // Make sure its value does not contain any. if (isExpression(n, attrs.getValue(i))) { err.jspError(n, - jsp.error.attribute.non_rt_with_expr, + jsp.error.attribute.custom.non_rt_with_expr, tldAttrs[j].getName()); } jspAttrs[i] @@ -976,7 +983,7 @@ * Checks to see if the given attribute value represents a runtime or * EL expression. */ - private boolean isExpression(Node.CustomTag n, String value) { + private boolean isExpression(Node n, String value) { if ((n.isXmlSyntax() value.startsWith(%=)) || (!n.isXmlSyntax() value.startsWith(%=)) || (value.indexOf(${) != -1 !pageInfo.isELIgnored())) 1.66 +3 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.65 retrieving revision 1.66 diff -u -r1.65 -r1.66 --- messages.properties 9 Dec 2002 22:17:32 - 1.65 +++ messages.properties 9 Dec 2002 23:27:03 - 1.66 @@ -297,7 +297,8 @@ jsp.error.page.config_pagedir_encoding_conflict=Page-encoding specified in jsp-property-group ({0}) is different from that specified in page directive ({1}) jsp.error.page.prolog_pagedir_encoding_conflict=Page-encoding specified in XML prolog ({0}) is different from that specified in page directive ({1}) jsp.error.page.prolog_config_encoding_conflict=Page-encoding specified in XML prolog ({0}) is different from that specified in jsp-property-group ({1}) -jsp.error.attribute.non_rt_with_expr=According to TLD, attribute {0} does not accept any expressions +jsp.error.attribute.custom.non_rt_with_expr=According to TLD, attribute {0} does not accept any expressions +jsp.error.attribute.standard.non_rt_with_expr=The {0} attribute of the {1} standard action does not accept any expressions jsp.error.scripting.variable.missing_name=Unable to determine scripting variable name from attribute {0} jasper.error.emptybodycontent.nonempty=According to TLD, tag {0} must be empty, but is not jsp.error.tagfile.var_name_given_equals_attr_name=In tag file {0}, the name-given attribute ({1}) of a variable directive equals the name attribute of an attribute directive 1.25 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- messages_es.properties2 Dec 2002 11:21:00 - 1.24 +++
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/06 11:11:53 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Added error message for jsp.error.plugin.wrongRootElement Revision ChangesPath 1.64 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.63 retrieving revision 1.64 diff -u -r1.63 -r1.64 --- messages.properties 2 Dec 2002 20:08:55 - 1.63 +++ messages.properties 6 Dec 2002 19:11:53 - 1.64 @@ -338,3 +338,4 @@ jsp.error.attributes.not.allowed = {0} must not have any attributes jsp.error.tagfile.badSuffix=Missing \.tag\ suffix in tag file path {0} jsp.error.tagfile.illegalPath=Missing \/WEB-INF/tags\ or \/META-INF/tags\ in tag file path {0} +jsp.error.plugin.wrongRootElement=Name of root element in {0} different from {1} -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
jfclere 2002/12/02 03:21:01 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: The -o option is not supported -dd seems to be the one to use. Revision ChangesPath 1.62 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.61 retrieving revision 1.62 diff -u -r1.61 -r1.62 --- messages.properties 23 Nov 2002 00:04:58 - 1.61 +++ messages.properties 2 Dec 2002 11:21:00 - 1.62 @@ -156,7 +156,7 @@ jsp.error.bad_attribute=Attribute {0} invalid for tag {1} according to TLD jsp.error.tld_not_found=Could not locate TLD {0} jsp.error.webxml_not_found=Could not locate web.xml -jsp.cmd_line.usage=Usage: jsptoservlet [-o path/to/outputDirectory] [-keepgenerated] \ +jsp.cmd_line.usage=Usage: jsptoservlet [-dd path/to/outputDirectory] [-keepgenerated] \ .jsp files jsp.message.cp_is=Classpath {0} is: {1} jsp.error.unable.to_load_taghandler_class=Unable to load tag handler class {0} because of {1} 1.24 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- messages_es.properties8 Nov 2002 19:42:56 - 1.23 +++ messages_es.properties2 Dec 2002 11:21:00 - 1.24 @@ -128,7 +128,7 @@ jsp.error.bad_attribute=atributo {0} no es valido de acuerdo con el TLD especificado jsp.error.tld_not_found=No puedo localizar el TLD {0} jsp.error.webxml_not_found=No puedo localizar web.xml -jsp.cmd_line.usage=Uso: jsptoservlet [-o ruta/a/DirectorioSalida] [-keepgenerated] Archivos .jsp +jsp.cmd_line.usage=Uso: jsptoservlet [-dd ruta/a/DirectorioSalida] [-keepgenerated] Archivos .jsp jsp.message.cp_is=classpath {0} es: {1} jsp.error.unable.to_load_taghandler_class=No se puede cargar clase manejadora {0} del tag acausa de {1} jsp.error.unable.to_find_method=No se puede encontrar el metodo de escritura para el atributo: {0} 1.6 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- messages_fr.properties23 Nov 2002 00:04:58 - 1.5 +++ messages_fr.properties2 Dec 2002 11:21:00 - 1.6 @@ -153,7 +153,7 @@ jsp.error.bad_attribute=L''attribut {0} est incorrect pour le tag {1} d''après la TLD indiquée sjsp.error.tld_not_found=Impossible de localiser la TLD {0} jsp.error.webxml_not_found=Impossible de localiser le fichier web.xml -jsp.cmd_line.usage=Usage: jsptoservlet [-o path/to/outputDirectory] [-keepgenerated] \ +jsp.cmd_line.usage=Usage: jsptoservlet [-dd path/to/outputDirectory] [-keepgenerated] \ .jsp files jsp.message.cp_is=Le Classpath {0} est: {1} jsp.error.unable.to_load_taghandler_class=Impossible de charger la classe gestionnaire de tag {0} car {1} 1.24 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties Index: messages_ja.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- messages_ja.properties8 Nov 2002 19:42:56 - 1.23 +++ messages_ja.properties2 Dec 2002 11:21:00 - 1.24 @@ -139,7 +139,7 @@ jsp.error.bad_attribute=\u6307\u5b9a\u3055\u308c\u305fTLD\u306b\u3088\u308b\u3068\u3001\u5c5e\u6027 {0} \u306f\u7121\u52b9\u3067\u3059 jsp.error.tld_not_found=TLD {0} \u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093 jsp.error.webxml_not_found=web.xml\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093 -jsp.cmd_line.usage=\u4f7f\u7528\u6cd5: jsptoservlet [-o \u51fa\u529b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306e\u30d1\u30b9] [-keepgenerated] .jsp\u30d5\u30a1\u30a4\u30eb\u7fa4 +jsp.cmd_line.usage=\u4f7f\u7528\u6cd5: jsptoservlet [-dd
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/12/02 12:08:55 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Added error codes/messages for 15002 Revision ChangesPath 1.63 +3 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.62 retrieving revision 1.63 diff -u -r1.62 -r1.63 --- messages.properties 2 Dec 2002 11:21:00 - 1.62 +++ messages.properties 2 Dec 2002 20:08:55 - 1.63 @@ -336,3 +336,5 @@ jsp.error.xml.invalidHighSurrogate = High surrogate bits in UTF-8 sequence must not exceed 0x10 but found 0x{0}. jsp.error.multiple.jspoutput = Cannot have multiple occurrences of lt;jsp:outputgt; jsp.error.attributes.not.allowed = {0} must not have any attributes +jsp.error.tagfile.badSuffix=Missing \.tag\ suffix in tag file path {0} +jsp.error.tagfile.illegalPath=Missing \/WEB-INF/tags\ or \/META-INF/tags\ in tag file path {0} -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_fr.properties
luehe 2002/11/22 16:04:58 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties messages_fr.properties Log: Applied patch supplied by Ryan Lubke Revision ChangesPath 1.61 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.60 retrieving revision 1.61 diff -u -r1.60 -r1.61 --- messages.properties 16 Nov 2002 04:20:10 - 1.60 +++ messages.properties 23 Nov 2002 00:04:58 - 1.61 @@ -266,7 +266,7 @@ jsp.error.empty.body.not.allowed=Empty body not allowed for {0} jsp.error.jspbody.required=Must use jsp:body to specify tag body for {0} if jsp:attribute is used. jsp.error.jspbody.emptybody.only=The {0} tag can only have jsp:attribute in its body. -jsp.error.no.scriptlets=Scripting elements ( %@, %!, %=, % ) are disallowed here. +jsp.error.no.scriptlets=Scripting elements ( %!, jsp:declaration, %=, jsp:expression, %, jsp:scriptlet ) are disallowed here. jsp.error.internal.unexpected_node_type=Internal Error: Unexpected node type encountered jsp.error.tld.fn.invalid.signature=Invalid syntax for function signature in TLD. Tag Library: {0}, Function: {1} jsp.error.tld.fn.duplicate.name=Duplicate function name {0} in tag library {1} 1.5 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- messages_fr.properties11 Nov 2002 09:03:56 - 1.4 +++ messages_fr.properties23 Nov 2002 00:04:58 - 1.5 @@ -263,7 +263,7 @@ jsp.error.empty.body.not.allowed=Un corps vide n'est pas autorisé pour {0} jsp.error.jspbody.required=Doit utiliser jsp:body pour indiqué le corps de tag body de {0} si jsp:attribute est utilisé. jsp.error.jspbody.emptybody.only=Le tag {0} ne peut avoir que jsp:attribute dans son corps. -jsp.error.no.scriptlets=Les éléments de Scripting ( %@, %!, %=, % ) ne sont pas autorisés ici. +jsp.error.no.scriptlets=Les éléments de Scripting ( %!, jsp:declaration, %=, jsp:expression, %, jsp:scriptlet ) ne sont pas autorisés ici. jsp.error.internal.unexpected_node_type=Erreur Interne: Type de node inattendu rencontré jsp.error.tld.fn.invalid.signature=Synthaxe invalide pour la signature de fonction dans la TLD. Librairie de Tag : {0}, Fonction: {1} jsp.error.tld.fn.invalid.signature.classnotfound=Synthaxe invalide pour la signature de fonction dans la TLD. Classe introuvable: ${0}. Librairie de Tag: {1}, Fonction: {2}. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
luehe 2002/11/08 11:42:56 Modified:jasper2/src/share/org/apache/jasper/compiler Generator.java JspDocumentParser.java Node.java Parser.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Made enumeration of ValidationMessage[] returned by TLV's validate() method more robust by also considering the case where a ValidationMessage element might be null. Revision ChangesPath 1.123 +5 -57 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.122 retrieving revision 1.123 diff -u -r1.122 -r1.123 --- Generator.java7 Nov 2002 19:09:03 - 1.122 +++ Generator.java8 Nov 2002 19:42:55 - 1.123 -1766,65 +1766,13 } public void visit(Node.JspBody n) throws JasperException { -Node.JspAttribute value = n.getValue(); if (isSimpleTagHandler) { out.printin(simpleTagHandlerVar); out.print(.setJspBody(); - - if (value != null) { - out.print(attributeValue(value, false, JspFragment.class, -null )); - } else { - generateJspFragment(n, simpleTagHandlerVar); - } + generateJspFragment(n, simpleTagHandlerVar); out.println();); } else { -Node parent = n.getParent(); -if( (parent instanceof Node.CustomTag) (value != null) ) { -Node.CustomTag customTag = (Node.CustomTag)parent; - -// Classic tag handler invoked with jsp:body value=... -// Generate a tag body that evaluates the given -// fragment. - -// First, generate a Map with all the AT_BEGIN and -// NESTED variables so the body can access them. -VariableInfo[] varInfos = customTag.getVariableInfos(); -TagVariableInfo[] tagVarInfos = -customTag.getTagVariableInfos(); - -String var = JspUtil.nextTemporaryVariableName(); -out.printil( java.util.HashMap + var + - = new java.util.HashMap(); ); - - for (int i = 0; i varInfos.length; i++) { - if ((varInfos[i].getScope() == VariableInfo.AT_BEGIN) - || (varInfos[i].getScope() == VariableInfo.NESTED)) { - out.printil( var + .put( \ + - varInfos[i].getVarName() + \, + - varInfos[i].getVarName() + ); ); - } - } - - for (int i = 0; i tagVarInfos.length; i++) { - if ((tagVarInfos[i].getScope() == VariableInfo.AT_BEGIN) - || (tagVarInfos[i].getScope() == VariableInfo.NESTED)) { - out.printin( var + .put( \ ); - String name = tagVarInfos[i].getNameGiven(); - if( name == null ) { - name = customTag.getTagData().getAttributeString( -tagVarInfos[i].getNameFromAttribute()); - } - out.println( name + \, + name + ); ); - } - } - -out.printil(( + -attributeValue(value, false, JspFragment.class, -null ) + ).invoke( out, + var + ); ); - } else { -visitBody(n); - } + visitBody(n); } } 1.27 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- JspDocumentParser.java8 Nov 2002 03:03:01 - 1.26 +++ JspDocumentParser.java8 Nov 2002 19:42:55 - 1.27 -274,7 +274,7 } else if
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
kinman 2002/11/08 11:55:47 Modified:jasper2/src/share/org/apache/jasper/compiler Generator.java JspDocumentParser.java Node.java PageInfo.java TagConstants.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: - Implemented jsp:output. - Suppress xml declaration if jsp:output's omit-xml-declaration attribute is true Revision ChangesPath 1.124 +6 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.123 retrieving revision 1.124 diff -u -r1.123 -r1.124 --- Generator.java8 Nov 2002 19:42:55 - 1.123 +++ Generator.java8 Nov 2002 19:55:47 - 1.124 -552,7 +552,9 * Generates a XML declaration */ private void generateXmlDeclaration(Node.Nodes page) { - if (page.getRoot().isXmlSyntax() ! pageInfo.hasJspRoot()) { + if (page.getRoot().isXmlSyntax() ! pageInfo.hasJspRoot() + (pageInfo.getOmitXmlDecl() == null /* not specified */ || + ! JspUtil.booleanValue(pageInfo.getOmitXmlDecl( { String cType = pageInfo.getContentType(); String charSet = cType.substring(cType.indexOf(charset=)+8); out.printil(out.write(\?xml version=\\\1.0\\\ encoding=\\\ + 1.28 +5 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java Index: JspDocumentParser.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- JspDocumentParser.java8 Nov 2002 19:42:55 - 1.27 +++ JspDocumentParser.java8 Nov 2002 19:55:47 - 1.28 -277,6 +277,8 node = new Node.JspBody(start, current); } else if (qName.equals(JSP_ATTRIBUTE)) { node = new Node.NamedAttribute(attrsCopy, start, current); + } else if (qName.equals(JSP_OUTPUT)) { + node = new Node.JspOutput(attrsCopy, start, current); } else if (qName.equals(JSP_TAG_DIRECTIVE)) { if (!isTagFile) { throw new SAXParseException( 1.39 +21 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java Index: Node.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java,v retrieving revision 1.38 retrieving revision 1.39 diff -u -r1.38 -r1.39 --- Node.java 8 Nov 2002 19:42:55 - 1.38 +++ Node.java 8 Nov 2002 19:55:47 - 1.39 -904,6 +904,20 } /** + * Represents a jsp:output. + */ +public static class JspOutput extends Node { + + public JspOutput(Attributes attrs, Mark start, Node parent) { + super(attrs, start, parent); + } + + public void accept(Visitor v) throws JasperException { + v.visit(this); + } +} + +/** * Collected information about child elements. Used by nodes like * CustomTag, JspBody, and NamedAttribute. The information is * set in the Collector. -1724,6 +1738,10 } public void visit(TemplateText n) throws JasperException { + doVisit(n); + } + + public void visit(JspOutput n) throws JasperException { doVisit(n); } } 1.16 +12 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java Index: PageInfo.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- PageInfo.java 7 Nov 2002 22:19:13 - 1.15 +++ PageInfo.java 8 Nov 2002 19:55:47 - 1.16 -102,6 +102,7 private boolean elIgnored = false; private boolean elIgnoredSpecified = false; private boolean isXml = false; +private String omitXmlDecl = null; // true is there is a is-xml element in jsp-config private boolean isXmlSpecified = false; -326,5 +327,13 public boolean hasJspRoot() { return hasJspRoot; +} + +public String getOmitXmlDecl() { + return omitXmlDecl; +} + +public void setOmitXmlDecl(String omit) { + omitXmlDecl = omit;
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties
luehe 2002/11/07 14:19:13 Modified:jasper2/src/share/org/apache/jasper/compiler PageInfo.java ParserController.java Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: Report translation-time error if different page character encodings are detected in two or more of the following: the XML prolog of a JSP page, the pageEncoding attribute of the page directive of the JSP page, and in a JSP configuration element (whose URL pattern matches the page). Revision ChangesPath 1.15 +8 -19 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java Index: PageInfo.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageInfo.java,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- PageInfo.java 6 Nov 2002 20:14:19 - 1.14 +++ PageInfo.java 7 Nov 2002 22:19:13 - 1.15 -94,10 +94,7 * (declaration). * Only meaningful for XML documents. */ -private String xmlEncoding = null; - -// Indicates whether page has XML declaration with encoding attribute -private boolean hasEncodingProlog = false; +private String xmlPrologEncoding = null; private int maxTagNesting = 0; private boolean scriptless = false; -235,22 +232,14 return pageEncoding; } -public void setXmlEncoding(String xmlEncoding) { - this.xmlEncoding = xmlEncoding; +public void setXmlPrologEncoding(String xmlPrologEncoding) { + this.xmlPrologEncoding = xmlPrologEncoding; } -public String getXmlEncoding() { - return xmlEncoding; +public String getXmlPrologEncoding() { + return xmlPrologEncoding; } -public void setHasEncodingProlog(boolean hasEncodingProlog) { - this.hasEncodingProlog = hasEncodingProlog; -} - -public boolean hasEncodingProlog() { - return hasEncodingProlog; -} - public int getMaxTagNesting() { return maxTagNesting; } 1.26 +10 -6 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ParserController.java Index: ParserController.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ParserController.java,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- ParserController.java 7 Nov 2002 00:50:52 - 1.25 +++ ParserController.java 7 Nov 2002 22:19:13 - 1.26 -192,9 +192,6 if (isTopFile) { pageInfo.setIsXml(isXml); - if (isXml) { - pageInfo.setXmlEncoding(encoding); - } isTopFile = false; } else { compiler.getPageInfo().addDependant(absFileName); -274,12 +271,19 ctxt, err); sourceEnc = (String) ret[0]; boolean isEncodingSetInProlog = ((Boolean) ret[1]).booleanValue(); - if (isTopFile) { - pageInfo.setHasEncodingProlog(isEncodingSetInProlog); - } if (isEncodingSetInProlog) { // Prolog present only in XML syntax isXml = true; + if (isTopFile) { + String jspConfigPageEnc = pageInfo.getPageEncoding(); + if (jspConfigPageEnc != null + !jspConfigPageEnc.equals(sourceEnc)) { + err.jspError( + jsp.error.page.prolog_config_encoding_conflict, + sourceEnc, jspConfigPageEnc); + } + pageInfo.setXmlPrologEncoding(sourceEnc); + } } else if (sourceEnc.equals(UTF-8)) { /* * We don't know if we're dealing with an XML document 1.52 +29 -12 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.51 retrieving revision 1.52 diff -u -r1.51 -r1.52 --- Validator.java7 Nov 2002 18:34:19 - 1.51 +++ Validator.java7 Nov 2002 22:19:13 - 1.52 -255,17 +255,34 if (pageEncodingSeen) err.jspError(n, jsp.error.page.multiple.pageencoding);
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
hgomez 2002/11/06 03:38:35 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Correct typos (could someone validate the fixes ???) Revision ChangesPath 1.54 +12 -10 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.53 retrieving revision 1.54 diff -u -r1.53 -r1.54 --- messages.properties 4 Nov 2002 19:15:33 - 1.53 +++ messages.properties 6 Nov 2002 11:38:35 - 1.54 -43,13 +43,13 jsp.error.page.multiple.buffer=Page directive: can't have multiple occurrences of buffer jsp.error.page.invalid.buffer=Page directive: invalid value for buffer jsp.error.page.multiple.autoflush=Page directive: can't have multiple occurrences of autoFlush -jsp.error.page.invalid.autoflush==Page directive: invalid value for autoFlush +jsp.error.page.invalid.autoflush=Page directive: invalid value for autoFlush jsp.error.page.multiple.threadsafe=Page directive: can't have multiple occurrences of isThreadSafe -jsp.error.page.invalid.threadsafe==Page directive: invalid value for isThreadSafe +jsp.error.page.invalid.threadsafe=Page directive: invalid value for isThreadSafe jsp.error.page.multiple.info=Page directive: can't have multiple occurrences of info -jsp.error.page.invalid.info==Page directive: invalid value for info +jsp.error.page.invalid.info=Page directive: invalid value for info jsp.error.page.multiple.iserrorpage=Page directive: can't have multiple occurrences of isErrorPage -jsp.error.page.invalid.iserrorpage==Page directive: invalid value for isErrorPage +jsp.error.page.invalid.iserrorpage=Page directive: invalid value for isErrorPage jsp.error.page.multiple.errorpage=Page directive: can't have multiple occurrences of errorPage jsp.error.page.multiple.language=Page directive: can't have multiple occurrences of language jsp.error.page.defafteruse.language=Page directive: can't define language after a scriptlet -74,7 +74,7 jsp.error.usebean.notinsamefile=useBean tag must begin and end in the same physical file jsp.error.unable.loadclass=Unable to load class {0} jsp.error.unable.compile=Unable to compile class for JSP -jsp.error.unable.load=Unable to compile class for JSP +jsp.error.unable.load=Unable to load class for JSP jsp.error.unable.rename=Unable to rename class file {0} to {1} jsp.error.mandatory.attribute={0}: Mandatory attribute {1} missing jsp.engine.info=Jasper JSP 1.1 Engine -112,7 +112,9 jsp.error.setproperty.beanNotFound=setProperty: Bean {0} not found jsp.error.getproperty.beanNotFound=getProperty: Bean {0} not found jsp.error.setproperty.ClassNotFound=setProperty: Class {0} not found -jsp.error.setproperty.invalidSyantax=setProperty: can't have non-null value when property=* +# typo ? +#jsp.error.setproperty.invalidSayntax=setProperty: can't have non-null value when property=* +jsp.error.setproperty.invalidSyntax=setProperty: can't have non-null value when property=* jsp.error.setproperty.beanInfoNotFound=setproperty: beanInfo for bean {0} not found jsp.error.setproperty.paramOrValue=setProperty: either param or value can be present jsp.error.setproperty.arrayVal=setProperty: can't set array property {0} through a string constant value -186,11 +188,11 \-mapped Generate separate write() calls for each HTML line in the JSP\n\ \-die[#] Generate an error return code (#) on fatal errors.\n\ \If the number is absent or unparsable it defaults to 1.\n\ -\-uribase dir The uri directory compilations shoule be relative to\n\ +\-uribase dir The uri directory compilations should be relative to\n\ \(Default is /)\n\ \-uriroot dir The root directory that uri files should be resolved\n\ \against, (Default is the directory jspc is invoked from)\n\ -\-webinc file Creates partial servlet mapings for the -webapp option\n\ +\-webinc file Creates partial servlet mappings for the -webapp option\n\ \-webxml file Creates a complete web.xml when using the -webapp option.\n\ \-ieplugin clsid Java Plugin classid for Internet Explorer\n\ \-sax2 driverclassname Driver class name for the SAX 2.0 parser to be used\n\ -211,7 +213,7 jspc.webinc.header=\n\ !--\n\ Automatically created by Tomcat JspC.\n\ -Place this fragement in the web.xml before all icon, display-name,\n\ +Place this fragment in the web.xml before all icon, display-name,\n\ description, distributable, and context-param elements.\n\ --\n jspc.webinc.footer=\n\ -- To unsubscribe,
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/11/06 15:00:40 Modified:jasper2/src/share/org/apache/jasper/resources Tag: tomcat_4_branch messages.properties Log: added error messages for jsp.error.attribute.noequal and jsp.error.attribute.noquote error codes Revision ChangesPath No revision No revision 1.9.2.5 +3 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.9.2.4 retrieving revision 1.9.2.5 diff -u -r1.9.2.4 -r1.9.2.5 --- messages.properties 9 Oct 2002 21:59:08 - 1.9.2.4 +++ messages.properties 6 Nov 2002 23:00:40 - 1.9.2.5 -252,3 +252,5 jsp.error.multiple.line.number=\n\nAn error occurred between lines: {0} and {1} in the jsp file: {2}\n\n jsp.error.corresponding.servlet=Generated servlet error:\n jasper.error.emptybodycontent.nonempty=According to TLD, tag {0} must be empty, but is not +jsp.error.attribute.noequal=equal symbol expected +jsp.error.attribute.noquote=quote symbol expected -- To unsubscribe, e-mail: mailto:tomcat-dev-unsubscribe;jakarta.apache.org For additional commands, e-mail: mailto:tomcat-dev-help;jakarta.apache.org
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties
luehe 2002/11/04 11:15:34 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties Log: Added error message for jsp.error.useBean.noSession Revision ChangesPath 1.53 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.52 retrieving revision 1.53 diff -u -r1.52 -r1.53 --- messages.properties 30 Oct 2002 20:53:11 - 1.52 +++ messages.properties 4 Nov 2002 19:15:33 - 1.53 -302,3 +302,4 jsp.error.scripting.variable.missing_name=Unable to determine scripting variable name from attribute {0} jasper.error.emptybodycontent.nonempty=According to TLD, tag {0} must be empty, but is not jsp.error.tagfile.var_name_given_equals_attr_name=In tag file {0}, the name-given attribute ({1}) of a variable directive equals the name attribute of an attribute directive +jsp.error.useBean.noSession=Illegal for useBean to use session scope when JSP page declares (via page directive) that it does not participate in sessions 1.20 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties Index: messages_es.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_es.properties,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- messages_es.properties30 Oct 2002 20:53:11 - 1.19 +++ messages_es.properties4 Nov 2002 19:15:33 - 1.20 -222,3 +222,4 jsp.error.scripting.variable.missing_name= jasper.error.emptybodycontent.nonempty= jsp.error.tagfile.var_name_given_equals_attr_name= +jsp.error.useBean.noSession= 1.20 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties Index: messages_ja.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_ja.properties,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- messages_ja.properties30 Oct 2002 20:53:11 - 1.19 +++ messages_ja.properties4 Nov 2002 19:15:34 - 1.20 -253,3 +253,4 jsp.error.scripting.variable.missing_name= jasper.error.emptybodycontent.nonempty= jsp.error.tagfile.var_name_given_equals_attr_name= +jsp.error.useBean.noSession= -- To unsubscribe, e-mail: mailto:tomcat-dev-unsubscribe;jakarta.apache.org For additional commands, e-mail: mailto:tomcat-dev-help;jakarta.apache.org
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties
luehe 2002/10/30 12:53:11 Modified:jasper2/src/share/org/apache/jasper/compiler TagFileProcessor.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties Log: Enforce restriction that it is illegal to have a variable.name-given equal to an attribute.name in the same tag file translation unit. Revision ChangesPath 1.35 +45 -10 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagFileProcessor.java Index: TagFileProcessor.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagFileProcessor.java,v retrieving revision 1.34 retrieving revision 1.35 diff -u -r1.34 -r1.35 --- TagFileProcessor.java 30 Oct 2002 17:41:22 - 1.34 +++ TagFileProcessor.java 30 Oct 2002 20:53:11 - 1.35 -112,7 +112,7 }; private static final JspUtil.ValidAttribute[] variableDirectiveAttrs = { - new JspUtil.ValidAttribute(name-given), + new JspUtil.ValidAttribute(name-given, true), new JspUtil.ValidAttribute(variable-class), new JspUtil.ValidAttribute(scope), new JspUtil.ValidAttribute(declare), -131,9 +131,9 private String smallIcon = null; private String largeIcon = null; private boolean dynamicAttributes = false; - -private Vector attributeVector = new Vector(); -private Vector variableVector = new Vector(); + +private Vector attributeVector; +private Vector variableVector; public TagFileDirectiveVisitor(Compiler compiler, TagLibraryInfo tagLibInfo, -141,6 +141,8 err = compiler.getErrorDispatcher(); this.tagLibInfo = tagLibInfo; this.name = name; + attributeVector = new Vector(); + variableVector = new Vector(); } public void visit(Node.TagDirective n) throws JasperException { -233,6 +235,22 scope)); } + /* + * Returns the vector of attributes corresponding to attribute + * directives. + */ + public Vector getAttributesVector() { + return attributeVector; + } + + /* + * Returns the vector of variables corresponding to variable + * directives. + */ + public Vector getVariablesVector() { + return variableVector; + } + public TagInfo getTagInfo() { if (name == null) { -285,20 +303,37 TagLibraryInfo tagLibInfo) throws JasperException { + ErrorDispatcher err = pc.getCompiler().getErrorDispatcher(); + Node.Nodes page = null; try { page = pc.parseTagFile(tagfile); } catch (FileNotFoundException e) { - pc.getCompiler().getErrorDispatcher().jspError( -jsp.error.file.not.found, tagfile); + err.jspError(jsp.error.file.not.found, tagfile); } catch (IOException e) { - pc.getCompiler().getErrorDispatcher().jspError( -jsp.error.file.not.found, tagfile); + err.jspError(jsp.error.file.not.found, tagfile); } TagFileDirectiveVisitor tagFileVisitor = new TagFileDirectiveVisitor(pc.getCompiler(), tagLibInfo, name); page.visit(tagFileVisitor); + + /* + * It is illegal to have a variable.name-given equal to an + * attribute.name in the same tag file translation unit. + */ + Iterator attrsIter = tagFileVisitor.getAttributesVector().iterator(); + while (attrsIter.hasNext()) { + TagAttributeInfo attrInfo = (TagAttributeInfo) attrsIter.next(); + Iterator varsIter = tagFileVisitor.getVariablesVector().iterator(); + while (varsIter.hasNext()) { + TagVariableInfo varInfo = (TagVariableInfo) varsIter.next(); + if (attrInfo.getName().equals(varInfo.getNameGiven())) { + err.jspError(jsp.error.tagfile.var_name_given_equals_attr_name, + tagfile, attrInfo.getName()); + } + } + } return tagFileVisitor.getTagInfo(); } 1.52 +2 -1 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file:
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties
luehe 2002/10/28 10:16:21 Modified:jasper2/src/share/org/apache/jasper JspCompilationContext.java jasper2/src/share/org/apache/jasper/compiler Generator.java Parser.java ScriptingVariabler.java TagFileProcessor.java TagLibraryInfoImpl.java Validator.java jasper2/src/share/org/apache/jasper/runtime JspContextWrapper.java JspFragmentHelper.java jasper2/src/share/org/apache/jasper/servlet JspServletWrapper.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties Log: - Removed support for fragment-scoped variables. - Implemented new fragment invocation protocol: * Variables appear as page-scoped attributes local to the tag file, and are synchronized with the calling page context at various points. * Fragment invocations can no longer be parameterized. Revision ChangesPath 1.24 +3 -10 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspCompilationContext.java Index: JspCompilationContext.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspCompilationContext.java,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- JspCompilationContext.java21 Oct 2002 18:44:00 - 1.23 +++ JspCompilationContext.java28 Oct 2002 18:16:19 - 1.24 -122,7 +122,6 private boolean isTagFile; private boolean protoTypeMode; private TagInfo tagInfo; -private TagData tagData; // jspURI _must_ be relative to the context public JspCompilationContext(String jspUri, -159,7 +158,6 public JspCompilationContext(String tagfile, TagInfo tagInfo, - TagData tagData, Options options, ServletContext context, JspServletWrapper jsw, -169,7 +167,6 this(tagfile, false, options, context, jsw, rctxt); this.isTagFile = true; this.tagInfo = tagInfo; - this.tagData = tagData; this.tagFileJars = tagFileJars; if (tagFileJars != null tagFileJars.get(tagfile) != null) { isPackagedTagFile = true; -378,10 +375,6 public void setPrototypeMode(boolean pm) { protoTypeMode = pm; -} - -public TagData getTagData() { - return tagData; } /** 1.112 +64 -197 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.111 retrieving revision 1.112 diff -u -r1.111 -r1.112 --- Generator.java17 Oct 2002 21:38:56 - 1.111 +++ Generator.java28 Oct 2002 18:16:19 - 1.112 -1832,85 +1832,28 public void visit(Node.InvokeAction n) throws JasperException { - /** - * A visitor to handle jsp:param in a jsp:invoke - */ - class ParamVisitor extends Node.Visitor { + // Copy virtual page scope of tag file to page scope of invoking + // page + out.printil(((org.apache.jasper.runtime.JspContextWrapper) jspContext).copyTagToPageScope(javax.servlet.jsp.tagext.VariableInfo.NESTED);); + out.printil(((org.apache.jasper.runtime.JspContextWrapper) jspContext).copyTagToPageScope(javax.servlet.jsp.tagext.VariableInfo.AT_BEGIN);); - // The name of the fragment to which the jsp:param applies - private String fragName; - - public ParamVisitor(String fragName) { - this.fragName = fragName; - } - -public void visit(Node.ParamAction n) throws JasperException { - out.printin(_jspx_params.put(); - out.print(quote(n.getTextAttribute(name))); - out.print(, ); - out.print(attributeValue(n.getValue(), false, - getParamClass(n), null)); - out.println();); - } - - /* - * Checks to see if the given jsp:param matches a tag file - * variable scoped to the same fragment as the enclosing - * jsp:invoke. If a match is found, the class specified in - * the variable directive's 'variable-class'
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties
luehe 2002/10/28 14:01:34 Modified:jasper2/src/share/org/apache/jasper/compiler TagLibraryInfoImpl.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties Log: No longer swallow TLV and TEI instantiation error Revision ChangesPath 1.22 +11 -32 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java Index: TagLibraryInfoImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- TagLibraryInfoImpl.java 28 Oct 2002 18:16:20 - 1.21 +++ TagLibraryInfoImpl.java 28 Oct 2002 22:01:34 - 1.22 -390,27 +390,8 try { Class teiClass = ctxt.getClassLoader().loadClass(teiclass); tei = (TagExtraInfo) teiClass.newInstance(); - } catch (ClassNotFoundException cex) { -Constants.message(jsp.warning.teiclass.is.null, - new Object[] { - teiclass, cex.getMessage() - }, - Logger.WARNING - ); -} catch (IllegalAccessException iae) { -Constants.message(jsp.warning.teiclass.is.null, - new Object[] { - teiclass, iae.getMessage() - }, - Logger.WARNING - ); -} catch (InstantiationException ie) { -Constants.message(jsp.warning.teiclass.is.null, - new Object[] { - teiclass, ie.getMessage() - }, - Logger.WARNING - ); + } catch (Exception e) { +err.jspError(jsp.error.teiclass.instantiation, teiclass, e); } } -561,7 +542,9 className, declare, scope); } -private TagLibraryValidator createValidator(TreeNode elem) { +private TagLibraryValidator createValidator(TreeNode elem) +throws JasperException { + String validatorClass = null; Map initParams = new Hashtable(); -589,13 +572,9 Class tlvClass = ctxt.getClassLoader().loadClass(validatorClass); tlv = (TagLibraryValidator)tlvClass.newInstance(); -} catch (Exception ex) { -Constants.message(jsp.warning.tlvclass.is.null, - new Object[] { - validatorClass, - EXCEPTION: + ex.getMessage() - }, - Logger.ERROR); +} catch (Exception e) { +err.jspError(jsp.error.tlvclass.instantiation, + validatorClass, e); } } if (tlv != null) { 1.51 +3 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.50 retrieving revision 1.51 diff -u -r1.50 -r1.51 --- messages.properties 28 Oct 2002 18:16:21 - 1.50 +++ messages.properties 28 Oct 2002 22:01:34 - 1.51 -131,7 +131,7 jsp.warning.unknown.element.in.tag=Warning: Unknown element {0} in tag jsp.warning.unknown.element.in.attribute=Warning: Unknown element {0} in attribute jsp.error.more.than.one.taglib=More than one taglib in the TLD: {0} -jsp.warning.teiclass.is.null=Could not load TagExtraInfo class {0}: {1} +jsp.error.teiclass.instantiation=Failed to load or instantiate TagExtraInfo class: {0} jsp.error.non_null_tei_and_var_subelems=Tag {0} has one or more variable subelements and a TagExtraInfo class that returns one or more VariableInfo jsp.error.parse.error.in.TLD=Parse Error in the tag library descriptor: {0} jsp.error.unable.to.open.TLD=Unable to open the tag library descriptor: {0} -225,7 +225,7 jspc.error.fileDoesNotExist=The file argument ''{0}'' does not exist jspc.error.emptyWebApp=-webapp requires a trailing file argument
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/10/24 17:57:31 Modified:jasper2/src/share/org/apache/jasper/resources messages.properties Log: Minor wording change for jsp.error.taglibDirective.absUriCannotBeResolved code Revision ChangesPath 1.49 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- messages.properties 23 Oct 2002 19:26:37 - 1.48 +++ messages.properties 25 Oct 2002 00:57:31 - 1.49 -246,7 +246,7 jsp.warning.unknown.element.in.variable=Warning: Unknown element {0} in variable tld.error.variableNotAllowed=It is an error for a tag that has one or more variable subelements to have a TagExtraInfo class that returns a non-null object. jsp.error.tldInWebDotXmlNotFound=Could not locate TLD {1} for URI {0} specified in web.xml -jsp.error.taglibDirective.absUriCannotBeResolved=This absolute uri ({0}) cannot be resolved in either web.xml or the jar files deployed with this application +jsp.error.taglibDirective.absUriCannotBeResolved=The absolute uri: {0} cannot be resolved in either web.xml or the jar files deployed with this application jsp.error.taglibDirective.missing.location=Neither 'uri' nor 'tagdir' attribute specified in taglib directive jsp.error.invalid.tagdir=Tag file directory {0} does not start with \/WEB-INF/tags\ jsp.error.unterminated.user.tag=Unterminated user-defined tag: ending tag {0} not found or incorrectly nested -- To unsubscribe, e-mail: mailto:tomcat-dev-unsubscribe;jakarta.apache.org For additional commands, e-mail: mailto:tomcat-dev-help;jakarta.apache.org
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/10/23 12:26:37 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Fixed Bugtraq 4767492: NPE generated by JSP page translator if custom tag uses undefined attribute Revision ChangesPath 1.47 +6 -6 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.46 retrieving revision 1.47 diff -u -r1.46 -r1.47 --- Validator.java21 Oct 2002 20:13:32 - 1.46 +++ Validator.java23 Oct 2002 19:26:36 - 1.47 -679,7 +679,7 Hashtable tagDataAttrs = new Hashtable(attrs.getLength()); for (int i=0; iattrs.getLength(); i++) { boolean found = false; - for (int j=0; jtldAttrs.length; j++) { + for (int j=0; tldAttrs != null jtldAttrs.length; j++) { if (attrs.getQName(i).equals(tldAttrs[j].getName())) { if (tldAttrs[j].canBeRequestTime()) { Class expectedType = String.class; -748,7 +748,7 true); } else { err.jspError(n, jsp.error.bad_attribute, - attrs.getQName(i)); + attrs.getQName(i), n.getShortName()); } } } -776,7 +776,7 = new Node.JspAttribute(na, true); } else { err.jspError(n, jsp.error.bad_attribute, - na.getName()); + na.getName(), n.getShortName()); } } } 1.48 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.47 retrieving revision 1.48 diff -u -r1.47 -r1.48 --- messages.properties 17 Oct 2002 22:56:02 - 1.47 +++ messages.properties 23 Oct 2002 19:26:37 - 1.48 -150,7 +150,7 jsp.message.compiling_with=Compiling with: {0} jsp.message.template_text=template text jsp.error.missing_attribute=According to the TLD attribute {0} is mandatory for tag {1} -jsp.error.bad_attribute=Attribute {0} invalid according to the specified TLD +jsp.error.bad_attribute=Attribute {0} invalid for tag {1} according to TLD jsp.error.tld_not_found=Could not locate TLD {0} jsp.error.webxml_not_found=Could not locate web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-o path/to/outputDirectory] [-keepgenerated] \ -- To unsubscribe, e-mail: mailto:tomcat-dev-unsubscribe;jakarta.apache.org For additional commands, e-mail: mailto:tomcat-dev-help;jakarta.apache.org
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties
luehe 2002/10/17 15:56:02 Modified:jasper2/src/share/org/apache/jasper/compiler Validator.java jasper2/src/share/org/apache/jasper/resources messages.properties Log: Check array returned by TagExtraInfo.getVariableInfo() for non-emptiness instead of just null Revision ChangesPath 1.45 +6 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java Index: Validator.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v retrieving revision 1.44 retrieving revision 1.45 diff -u -r1.44 -r1.45 --- Validator.java17 Oct 2002 21:38:56 - 1.44 +++ Validator.java17 Oct 2002 22:56:02 - 1.45 -796,7 +796,9 // has one or more variable subelements to have a TagExtraInfo // class that returns a non-null object. TagExtraInfo tei = tagInfo.getTagExtraInfo(); - if (tei != null tei.getVariableInfo(tagData) != null + if (tei != null + tei.getVariableInfo(tagData) != null + tei.getVariableInfo(tagData).length 0 tagInfo.getTagVariableInfos() != null tagInfo.getTagVariableInfos().length 0) { err.jspError(jsp.error.non_null_tei_and_var_subelems, 1.47 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties Index: messages.properties === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v retrieving revision 1.46 retrieving revision 1.47 diff -u -r1.46 -r1.47 --- messages.properties 12 Oct 2002 18:55:30 - 1.46 +++ messages.properties 17 Oct 2002 22:56:02 - 1.47 -132,7 +132,7 jsp.warning.unknown.element.in.attribute=Warning: Unknown element {0} in attribute jsp.error.more.than.one.taglib=More than one taglib in the TLD: {0} jsp.warning.teiclass.is.null=Could not load TagExtraInfo class {0}: {1} -jsp.error.non_null_tei_and_var_subelems=Tag {0} has one or more variable subelements and a TagExtraInfo class that returns a non-null object +jsp.error.non_null_tei_and_var_subelems=Tag {0} has one or more variable subelements and a TagExtraInfo class that returns one or more VariableInfo jsp.error.parse.error.in.TLD=Parse Error in the tag library descriptor: {0} jsp.error.unable.to.open.TLD=Unable to open the tag library descriptor: {0} jsp.buffer.size.zero=Buffer size = 0 -- To unsubscribe, e-mail: mailto:tomcat-dev-unsubscribe;jakarta.apache.org For additional commands, e-mail: mailto:tomcat-dev-help;jakarta.apache.org