luehe       2003/02/26 09:58:08

  Modified:    jasper2/src/share/org/apache/jasper/compiler Parser.java
                        JspDocumentParser.java Node.java Validator.java
  Log:
  Fixed 17435: Request-time attribute values are not properly evaluated when providing 
values to the name attribute of jsp:element
  
  Revision  Changes    Path
  1.65      +4 -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.64
  retrieving revision 1.65
  diff -u -r1.64 -r1.65
  --- Parser.java       26 Feb 2003 17:10:48 -0000      1.64
  +++ Parser.java       26 Feb 2003 17:58:07 -0000      1.65
  @@ -148,7 +148,7 @@
        Parser parser = new Parser(pc, reader, isTagFile, directivesOnly,
                                   jarFile);
   
  -     Node.Root root = new Node.Root(reader.mark(), parent);
  +     Node.Root root = new Node.Root(reader.mark(), parent, false);
   
        if (directivesOnly) {
            parser.parseTagFileDirectives(root);
  
  
  
  1.45      +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.44
  retrieving revision 1.45
  diff -u -r1.44 -r1.45
  --- JspDocumentParser.java    24 Feb 2003 23:43:59 -0000      1.44
  +++ JspDocumentParser.java    26 Feb 2003 17:58:07 -0000      1.45
  @@ -167,7 +167,7 @@
        try {
            if (parent == null) {
                // create dummy <jsp:root> element
  -             jspRoot = new Node.Root();
  +             jspRoot = new Node.Root(true);
                handler.current = jspRoot;
            } else {
                handler.isTop = false;
  
  
  
  1.63      +11 -11    
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.62
  retrieving revision 1.63
  diff -u -r1.62 -r1.63
  --- Node.java 24 Feb 2003 18:09:37 -0000      1.62
  +++ Node.java 26 Feb 2003 17:58:07 -0000      1.63
  @@ -393,17 +393,21 @@
       public static class Root extends Node {
   
        private Root parentRoot;
  +     private boolean isXmlSyntax;
   
        /*
         * Constructor for dummy root.
         */
  -     Root() {}
  +     Root(boolean isXmlSyntax) {
  +         this.isXmlSyntax = isXmlSyntax;
  +     }
   
        /*
         * Constructor.
         */
  -     Root(Mark start, Node parent) {
  +     Root(Mark start, Node parent, boolean isXmlSyntax) {
            super(start, parent);
  +         this.isXmlSyntax = isXmlSyntax;
   
            // Figure out and set the parent root
            Node r = parent;
  @@ -417,7 +421,7 @@
        }
   
        public boolean isXmlSyntax() {
  -         return false;
  +         return isXmlSyntax;
        }
   
        /**
  @@ -436,7 +440,7 @@
   
        public JspRoot(String qName, Attributes attrs, Attributes xmlnsAttrs,
                       Mark start, Node parent) {
  -         super(start, parent);
  +         super(start, parent, true);
            this.qName = qName;
            this.localName = ROOT_ACTION;
            this.attrs = attrs;
  @@ -445,10 +449,6 @@
   
        public void accept(Visitor v) throws JasperException {
            v.visit(this);
  -     }
  -
  -     public boolean isXmlSyntax() {
  -         return true;
        }
       }
   
  
  
  
  1.84      +5 -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.83
  retrieving revision 1.84
  diff -u -r1.83 -r1.84
  --- Validator.java    26 Feb 2003 16:51:07 -0000      1.83
  +++ Validator.java    26 Feb 2003 17:58:07 -0000      1.84
  @@ -913,8 +913,8 @@
                if ("name".equals(attrs.getLocalName(i))) {
                    n.setNameAttribute(getJspAttribute(attrs.getQName(i),
                                                       attrs.getURI(i),
  -                                                    "name",
  -                                                    n.getAttributeValue("name"), 
  +                                                    attrs.getLocalName(i),
  +                                                    attrs.getValue(i),
                                                       java.lang.String.class,
                                                       null,
                                                       n,
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to