You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by lu...@apache.org on 2002/11/07 23:19:13 UTC
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 Changes Path
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 -0000 1.14
+++ PageInfo.java 7 Nov 2002 22:19:13 -0000 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 -0000 1.25
+++ ParserController.java 7 Nov 2002 22:19:13 -0000 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.java 7 Nov 2002 18:34:19 -0000 1.51
+++ Validator.java 7 Nov 2002 22:19:13 -0000 1.52
@@ -255,17 +255,34 @@
if (pageEncodingSeen)
err.jspError(n, "jsp.error.page.multiple.pageencoding");
pageEncodingSeen = true;
- // Make sure the page-encoding specified in a
- // jsp-property-group (if present) matches that of the page
- // directive
+ /*
+ * It is a translation-time error to name different page
+ * character encodings 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).
+ * At this point, we've already verified (in
+ * ParserController.figureOutJspDocument()) that the page
+ * character encodings specified in a JSP config element
+ * and XML prolog match.
+ */
+ String compareEnc = null;
if (jspProperty != null) {
- String jspConfigPageEnc = jspProperty.getPageEncoding();
- if (jspConfigPageEnc != null
- && !jspConfigPageEnc.equals(value)) {
- err.jspError(n,
- "jsp.error.page.pageencoding.conflict",
- jspConfigPageEnc, value);
+ compareEnc = jspProperty.getPageEncoding();
+ if (compareEnc != null && !compareEnc.equals(value)) {
+ err.jspError(
+ n, "jsp.error.page.config_pagedir_encoding_conflict",
+ compareEnc, value);
}
+ }
+ if (compareEnc == null) {
+ compareEnc = pageInfo.getXmlPrologEncoding();
+ if (compareEnc != null && !compareEnc.equals(value)) {
+ err.jspError(
+ n, "jsp.error.page.prolog_pagedir_encoding_conflict",
+ compareEnc, value);
+ }
}
pageInfo.setPageEncoding(value);
}
1.56 +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.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- messages.properties 6 Nov 2002 20:14:20 -0000 1.55
+++ messages.properties 7 Nov 2002 22:19:13 -0000 1.56
@@ -299,7 +299,9 @@
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.tagdirective.badbodycontent=Invalid body-content ({0}) in tag directive
-jsp.error.page.pageencoding.conflict=Page-encoding specified in jsp-property-group ({0}) is different from that specified in page directive ({1})
+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.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
1.22 +4 -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.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- messages_es.properties 6 Nov 2002 20:14:20 -0000 1.21
+++ messages_es.properties 7 Nov 2002 22:19:13 -0000 1.22
@@ -217,7 +217,9 @@
jsp.warning.bad.urlpattern.propertygroup=
jsp.error.jspelement.missing.name=
jsp.error.tagdirective.badbodycontent=
-jsp.error.page.pageencoding.conflict=
+jsp.error.page.config_pagedir_encoding_conflict=
+jsp.error.page.prolog_pagedir_encoding_conflict=
+jsp.error.page.prolog_config_encoding_conflict=
jsp.error.attribute.non_rt_with_expr=
jsp.error.scripting.variable.missing_name=
jasper.error.emptybodycontent.nonempty=
1.2 +4 -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.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- messages_fr.properties 6 Nov 2002 11:38:49 -0000 1.1
+++ messages_fr.properties 7 Nov 2002 22:19:13 -0000 1.2
@@ -297,7 +297,9 @@
jsp.error.not.in.template={0} n''est pas autoris� dans le corps de texte de template.
jsp.error.badaction=L''action n''est pas reconnue comme une action standard.
jsp.error.tagdirective.badbodycontent=Contenu de corps (body-content) ({0}) invalide dans la directive tag
-jsp.error.page.pageencoding.conflict=L''encode de page (Page-encoding) indiqu� dans le jsp-property-group ({0}) est diff�rent de celui indiqu� dans la directive de page ({1})
+jsp.error.page.config_pagedir_encoding_conflict=L''encode de page (Page-encoding) indiqu� dans le jsp-property-group ({0}) est diff�rent de celui indiqu� dans la directive de page ({1})
+jsp.error.page.prolog_pagedir_encoding_conflict=
+jsp.error.page.prolog_config_encoding_conflict=
jsp.error.attribute.non_rt_with_expr=D''apr�s la TLD, l''attribut {0} n''accepte aucune expression
jsp.error.scripting.variable.missing_name=Incapable de d�terminer le nom de variable scripting d''apr�s l''attribut {0}
jasper.error.emptybodycontent.nonempty=D''apr�s la TLD, le tag {0} doit �tre vide, mais ne l''est pas
1.22 +4 -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.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- messages_ja.properties 6 Nov 2002 20:14:20 -0000 1.21
+++ messages_ja.properties 7 Nov 2002 22:19:13 -0000 1.22
@@ -248,7 +248,9 @@
jsp.warning.bad.urlpattern.propertygroup=
jsp.error.jspelement.missing.name=
jsp.error.tagdirective.badbodycontent=
-jsp.error.page.pageencoding.conflict=
+jsp.error.page.config_pagedir_encoding_conflict=
+jsp.error.page.prolog_pagedir_encoding_conflict=
+jsp.error.page.prolog_config_encoding_conflict=
jsp.error.attribute.non_rt_with_expr=
jsp.error.scripting.variable.missing_name=
jasper.error.emptybodycontent.nonempty=
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>