- Check for some of the errors.
authorremm <remm@13f79535-47bb-0310-9956-ffa450edef68>
Wed, 1 Nov 2006 12:42:53 +0000 (12:42 +0000)
committerremm <remm@13f79535-47bb-0310-9956-ffa450edef68>
Wed, 1 Nov 2006 12:42:53 +0000 (12:42 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk@469890 13f79535-47bb-0310-9956-ffa450edef68

java/org/apache/jasper/compiler/TagFileProcessor.java
java/org/apache/jasper/resources/LocalStrings.properties

index c048bd3..1fac0ae 100644 (file)
@@ -201,7 +201,9 @@ class TagFileProcessor {
             }
             String deferredValueType = n.getAttributeValue("deferredValueType");
             if (deferredValueType != null) {
-                deferredValue = true;
+                if (!deferredValue) {
+                    err.jspError(n, "jsp.error.deferredvaluetypewithoutdeferredvalue");
+                }
             } else if (deferredValue) {
                 deferredValueType = "java.lang.Object";
             } else {
@@ -218,11 +220,17 @@ class TagFileProcessor {
             String deferredMethodSignature = n
                     .getAttributeValue("deferredMethodSignature");
             if (deferredMethodSignature != null) {
-                deferredMethod = true;
+                if (!deferredMethod) {
+                    err.jspError(n, "jsp.error.deferredmethodsignaturewithoutdeferredmethod");
+                }
             } else if (deferredMethod) {
                 deferredMethodSignature = "void methodname()";
             }
 
+            if (deferredMethod && deferredValue) {
+                err.jspError(n, "jsp.error.deferredmethodandvalue");
+            }
+            
             String attrName = n.getAttributeValue("name");
             boolean required = JspUtil.booleanValue(n
                     .getAttributeValue("required"));
index 94e7b5a..af9d977 100644 (file)
@@ -325,6 +325,9 @@ jsp.error.attribute.noequal=equal symbol expected
 jsp.error.attribute.noquote=quote symbol expected
 jsp.error.attribute.unterminated=attribute for {0} is not properly terminated
 jsp.error.missing.tagInfo=TagInfo object for {0} is missing from TLD
+jsp.error.deferredmethodsignaturewithoutdeferredmethod=Cannot specify a method signature if 'deferredMethod' is not 'true'
+jsp.error.deferredvaluetypewithoutdeferredvalue=Cannot specify a value type if 'deferredValue' is not 'true'
+jsp.error.deferredmethodandvalue='deferredValue' and 'deferredMethod' cannot be both 'true'
 jsp.error.fragmentwithtype=Cannot specify both 'fragment' and 'type' attributes.  If 'fragment' is present, 'type' is fixed as 'javax.servlet.jsp.tagext.JspFragment'
 jsp.error.fragmentwithrtexprvalue=Cannot specify both 'fragment' and 'rtexprvalue' attributes.  If 'fragment' is present, 'rtexprvalue' is fixed as 'true'
 jsp.error.fragmentWithDeclareOrScope=Both 'fragment' and 'declare' or 'scope' attributes specified in variable directive