tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From lu...@apache.org
Subject cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_ja.properties
Date Wed, 30 Oct 2002 20:53:11 GMT
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  Changes    Path
  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 -0000	1.34
  +++ TagFileProcessor.java	30 Oct 2002 20:53:11 -0000	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: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v
  retrieving revision 1.51
  retrieving revision 1.52
  diff -u -r1.51 -r1.52
  --- messages.properties	28 Oct 2002 22:01:34 -0000	1.51
  +++ messages.properties	30 Oct 2002 20:53:11 -0000	1.52
  @@ -301,3 +301,4 @@
   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
  +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.19      +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.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- messages_es.properties	28 Oct 2002 22:01:34 -0000	1.18
  +++ messages_es.properties	30 Oct 2002 20:53:11 -0000	1.19
  @@ -221,3 +221,4 @@
   jsp.error.attribute.non_rt_with_expr=
   jsp.error.scripting.variable.missing_name=
   jasper.error.emptybodycontent.nonempty=
  +jsp.error.tagfile.var_name_given_equals_attr_name=
  
  
  
  1.19      +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.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- messages_ja.properties	28 Oct 2002 22:01:34 -0000	1.18
  +++ messages_ja.properties	30 Oct 2002 20:53:11 -0000	1.19
  @@ -252,3 +252,4 @@
   jsp.error.attribute.non_rt_with_expr=
   jsp.error.scripting.variable.missing_name=
   jasper.error.emptybodycontent.nonempty=
  +jsp.error.tagfile.var_name_given_equals_attr_name=
  
  
  

--
To unsubscribe, e-mail:   <mailto:tomcat-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:tomcat-dev-help@jakarta.apache.org>


Mime
View raw message