cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Validator.java
kinman 2004/05/11 18:14:59 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Validator.java Log: - Fix 28696: xsi:schemaLocation should be a valid attribute for jsp:root. Revision ChangesPath 1.38 +1 -0 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.37 retrieving revision 1.38 diff -u -r1.37 -r1.38 --- PageDataImpl.java 17 Mar 2004 19:23:03 - 1.37 +++ PageDataImpl.java 12 May 2004 01:14:59 - 1.38 @@ -160,6 +160,7 @@ public void visit(Node.JspRoot n) throws JasperException { addAttributes(n.getTaglibAttributes()); +addAttributes(n.getNonTaglibXmlnsAttributes()); addAttributes(n.getAttributes()); visitBody(n); 1.117 +1 -0 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.116 retrieving revision 1.117 diff -u -r1.116 -r1.117 --- Validator.java17 Mar 2004 19:23:03 - 1.116 +++ Validator.java12 May 2004 01:14:59 - 1.117 @@ -300,6 +300,7 @@ private ClassLoader loader; private static final JspUtil.ValidAttribute[] jspRootAttrs = { +new JspUtil.ValidAttribute(xsi:schemaLocation), new JspUtil.ValidAttribute(version, true) }; private static final JspUtil.ValidAttribute[] includeDirectiveAttrs = { - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
luehe 2003/11/11 15:19:29 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Fixed Bugtraq 4952390 ('' operator used in simple Math throws an error: When used with taglib) Revision ChangesPath 1.36 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- PageDataImpl.java 26 Aug 2003 00:08:32 - 1.35 +++ PageDataImpl.java 11 Nov 2003 23:19:29 - 1.36 @@ -356,7 +356,7 @@ buf.append(jspId++).append(\); } buf.append(${); - buf.append(n.getText()); +buf.append(JspUtil.escapeXml(n.getText())); buf.append(}); if (!n.getRoot().isXmlSyntax()) { buf.append(JSP_TEXT_ACTION_END); - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java TagLibraryInfoImpl.java
luehe 2003/08/25 17:08:33 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java TagLibraryInfoImpl.java Log: - Prepend urn:jsptld to uri values that represent relative paths when adding xmlns:prefix attribute on the root of the JSP document's XML view (see JSP.10.1.5) - Make the value passed as the uri argument to TagLibraryValidator.validate() match the above Revision ChangesPath 1.35 +6 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.34 retrieving revision 1.35 diff -u -r1.34 -r1.35 --- PageDataImpl.java 12 Aug 2003 18:12:54 - 1.34 +++ PageDataImpl.java 26 Aug 2003 00:08:32 - 1.35 @@ -227,6 +227,9 @@ if (rootAttrs.getIndex(qName) == -1) { String location = attrs.getValue(uri); if (location != null) { +if (location.startsWith(/)) { +location = URN_JSPTLD + location; +} rootAttrs.addAttribute(, , qName, CDATA, location); } else { 1.46 +11 -7 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.45 retrieving revision 1.46 diff -u -r1.45 -r1.46 --- TagLibraryInfoImpl.java 25 Aug 2003 19:46:50 - 1.45 +++ TagLibraryInfoImpl.java 26 Aug 2003 00:08:32 - 1.46 @@ -82,7 +82,7 @@ * @author Kin-man Chung * @author Jan Luehe */ -class TagLibraryInfoImpl extends TagLibraryInfo { +class TagLibraryInfoImpl extends TagLibraryInfo implements TagConstants { // Logger private static Log log = LogFactory.getLog(TagLibraryInfoImpl.class); @@ -726,9 +726,13 @@ public ValidationMessage[] validate(PageData thePage) { TagLibraryValidator tlv = getTagLibraryValidator(); if (tlv == null) return null; - return tlv.validate(getPrefixString(), -(getReliableURN() != null) ? getReliableURN() : getURI(), -thePage); + +String uri = getURI(); +if (uri.startsWith(/)) { +uri = URN_JSPTLD + uri; +} + + return tlv.validate(getPrefixString(), uri, thePage); } protected TagLibraryValidator tagLibraryValidator; - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
kinman 2003/08/12 11:12:54 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: - Get the logic for resetDefaultNS right. What was I thinking :-) Revision ChangesPath 1.34 +18 -9 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- PageDataImpl.java 12 Aug 2003 01:58:54 - 1.33 +++ PageDataImpl.java 12 Aug 2003 18:12:54 - 1.34 @@ -407,13 +407,13 @@ public void visit(Node.CustomTag n) throws JasperException { boolean resetDefaultNSSave = resetDefaultNS; - appendTag(n); + appendTag(n, resetDefaultNS); resetDefaultNS = resetDefaultNSSave; } public void visit(Node.UninterpretedTag n) throws JasperException { boolean resetDefaultNSSave = resetDefaultNS; - appendTag(n); + appendTag(n, resetDefaultNS); resetDefaultNS = resetDefaultNSSave; } @@ -453,6 +453,15 @@ * Appends the given tag, including its body, to the XML view. */ private void appendTag(Node n) throws JasperException { + appendTag(n, false); + } + + /* + * Appends the given tag, including its body, to the XML view, + * and optionally reset default namespace to , if none specified. + */ + private void appendTag(Node n, boolean addDefaultNS) + throws JasperException { Node.Nodes body = n.getBody(); String text = n.getText(); @@ -460,7 +469,7 @@ buf.append().append(n.getQName()); buf.append(\n); - printAttributes(n); + printAttributes(n, addDefaultNS); buf.append( ).append(jspIdPrefix).append(:id).append(=\); buf.append(jspId++).append(\\n); @@ -682,7 +691,7 @@ /* * Appends the attributes of the given Node to the XML view. */ - private void printAttributes(Node n) { + private void printAttributes(Node n, boolean addDefaultNS) { /* * Append xmlns attributes that represent tag libraries @@ -707,10 +716,10 @@ buf.append( ).append(name).append(=\).append(value).append(\\n); defaultNSSeen |= xmlns.equals(name); } - if (resetDefaultNS !defaultNSSeen) { + if (addDefaultNS !defaultNSSeen) { buf.append( xmlns=\\\n); - resetDefaultNS = false; } + resetDefaultNS = false; /* * Append all other attributes - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
kinman 2003/08/11 17:52:50 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: - When including a JSP document (written in the XML syntax), in the resulting XML View of the translation unit the root element of the included segment must have the default namespace reset to . Revision ChangesPath 1.32 +19 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- PageDataImpl.java 11 May 2003 22:54:47 - 1.31 +++ PageDataImpl.java 12 Aug 2003 00:52:50 - 1.32 @@ -271,6 +271,7 @@ private StringBuffer buf; private Compiler compiler; private String jspIdPrefix; + private boolean resetDefaultNS = false; // Current value of jsp:id attribute private int jspId; @@ -295,7 +296,12 @@ appendXmlProlog(); appendTag(n); } else { + boolean resetDefaultNSSave = resetDefaultNS; + if (n.isXmlSyntax()) { + resetDefaultNS = true; + } visitBody(n); + resetDefaultNS = resetDefaultNSSave; } } @@ -400,11 +406,15 @@ } public void visit(Node.CustomTag n) throws JasperException { + boolean resetDefaultNSSave = resetDefaultNS; appendTag(n); + resetDefaultNS = resetDefaultNSSave; } public void visit(Node.UninterpretedTag n) throws JasperException { + boolean resetDefaultNSSave = resetDefaultNS; appendTag(n); + resetDefaultNS = resetDefaultNSSave; } public void visit(Node.JspText n) throws JasperException { @@ -690,10 +700,16 @@ */ attrs = n.getNonTaglibXmlnsAttributes(); len = (attrs == null) ? 0 : attrs.getLength(); + boolean defaultNSSeen = false; for (int i=0; ilen; i++) { String name = attrs.getQName(i); String value = attrs.getValue(i); buf.append( ).append(name).append(=\).append(value).append(\\n); + defaultNSSeen = xmlns.equals(name); + } + if (resetDefaultNS !defaultNSSeen) { + buf.append( xmlns=\\\n); + resetDefaultNS = false; } /* - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
luehe 2003/03/26 17:36:18 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Fixed 18314: Multiple declarations of same taglib cause exception during validation Revision ChangesPath 1.26 +19 -10 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- PageDataImpl.java 24 Mar 2003 21:36:05 - 1.25 +++ PageDataImpl.java 27 Mar 2003 01:36:18 - 1.26 @@ -187,13 +187,22 @@ Attributes attrs = n.getAttributes(); if (attrs != null) { String type = xmlns: + attrs.getValue(prefix); - String location = attrs.getValue(uri); - if (location != null) { - rootAttrs.addAttribute(, , type, CDATA, location); - } else { - location = attrs.getValue(tagdir); - rootAttrs.addAttribute(, , type, CDATA, -URN_JSPTAGDIR + location); + /* + * According to javadocs of org.xml.sax.helpers.AttributesImpl, + * the addAttribute method does not check to see if the + * specified attribute is already contained in the list: This + * is the application's responsibility! + */ + if (rootAttrs.getIndex(type) == -1) { + String location = attrs.getValue(uri); + if (location != null) { + rootAttrs.addAttribute(, , type, CDATA, +location); + } else { + location = attrs.getValue(tagdir); + rootAttrs.addAttribute(, , type, CDATA, +URN_JSPTAGDIR + location); + } } } } - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
luehe 2003/03/26 17:52:08 Modified:jasper2/src/share/org/apache/jasper/compiler Tag: tomcat_4_branch PageDataImpl.java Log: Fixed 18314: Multiple declarations of same taglib cause exception during validation Revision ChangesPath No revision No revision 1.3.2.1 +14 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -u -r1.3 -r1.3.2.1 --- PageDataImpl.java 17 May 2002 23:44:00 - 1.3 +++ PageDataImpl.java 27 Mar 2003 01:52:08 - 1.3.2.1 @@ -209,10 +209,17 @@ public void visit(Node.TaglibDirective n) throws JasperException { Attributes attrs = n.getAttributes(); if (attrs != null) { - String uri = attrs.getValue(uri); - String prefix = attrs.getValue(prefix); - rootAttrs.addAttribute(, , xmlns: + prefix, CDATA, -uri); + String qName = xmlns: + attrs.getValue(prefix); + /* + * According to javadocs of org.xml.sax.helpers.AttributesImpl, + * the addAttribute method does not check to see if the + * specified attribute is already contained in the list: This + * is the application's responsibility! + */ + if (rootAttrs.getIndex(qName) == -1) { + rootAttrs.addAttribute(, , qName, CDATA, +attrs.getValue(uri)); + } } } } - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
luehe 2003/03/26 17:52:55 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: renamed 'type' into 'qName' Revision ChangesPath 1.27 +7 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- PageDataImpl.java 27 Mar 2003 01:36:18 - 1.26 +++ PageDataImpl.java 27 Mar 2003 01:52:55 - 1.27 @@ -186,21 +186,21 @@ public void visit(Node.TaglibDirective n) throws JasperException { Attributes attrs = n.getAttributes(); if (attrs != null) { - String type = xmlns: + attrs.getValue(prefix); + String qName = xmlns: + attrs.getValue(prefix); /* * According to javadocs of org.xml.sax.helpers.AttributesImpl, * the addAttribute method does not check to see if the * specified attribute is already contained in the list: This * is the application's responsibility! */ - if (rootAttrs.getIndex(type) == -1) { + if (rootAttrs.getIndex(qName) == -1) { String location = attrs.getValue(uri); if (location != null) { - rootAttrs.addAttribute(, , type, CDATA, + rootAttrs.addAttribute(, , qName, CDATA, location); } else { location = attrs.getValue(tagdir); - rootAttrs.addAttribute(, , type, CDATA, + rootAttrs.addAttribute(, , qName, CDATA, URN_JSPTAGDIR + location); } } - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
costin 2003/01/13 14:08:58 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: NPE with empty files Revision ChangesPath 1.20 +4 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- PageDataImpl.java 5 Dec 2002 17:56:43 - 1.19 +++ PageDataImpl.java 13 Jan 2003 22:08:58 - 1.20 @@ -611,6 +611,7 @@ * within the given text, so it can be included in a CDATA section. */ private String escapeCDATA(String text) { +if( text==null ) return ; int len = text.length(); CharArrayWriter result = new CharArrayWriter(len); for (int i=0; ilen; i++) { -- 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/compiler PageDataImpl.java Validator.java
luehe 2002/11/07 10:34:19 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Validator.java Log: Append tag directive (containing single 'pageEncoding' attribute whose value is hard-coded to UTF-8) to XML view of tag files, and suppress 'pageEncoding' attribute in any existing tag directives. Revision ChangesPath 1.17 +98 -29 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- PageDataImpl.java 6 Nov 2002 20:58:10 - 1.16 +++ PageDataImpl.java 7 Nov 2002 18:34:19 - 1.17 -120,7 +120,7 * * param page the page nodes from which to generate the XML view */ -public PageDataImpl(Node.Nodes page, PageInfo pageInfo) +public PageDataImpl(Node.Nodes page, Compiler compiler) throws JasperException { // First pass -131,7 +131,7 // Second pass buf = new StringBuffer(); SecondPassVisitor secondPassVisitor - = new SecondPassVisitor(page.getRoot(), buf, pageInfo); + = new SecondPassVisitor(page.getRoot(), buf, compiler); page.visit(secondPassVisitor); } -237,7 +237,7 private Node.Root root; private StringBuffer buf; - private PageInfo pageInfo; + private Compiler compiler; // current jsp:id attribute value private int jspId; -246,10 +246,10 * Constructor */ public SecondPassVisitor(Node.Root root, StringBuffer buf, - PageInfo pageInfo) { + Compiler compiler) { this.root = root; this.buf = buf; - this.pageInfo = pageInfo; + this.compiler = compiler; } /* -371,7 +371,7 } public void visit(Node.TagDirective n) throws JasperException { - appendTag(JSP_TAG_DIRECTIVE, n.getAttributes(), null, null); + appendTagDirective(n); } public void visit(Node.AttributeDirective n) throws JasperException { -408,7 +408,11 if (tag.equals(JSP_ROOT) || body != null || text != null) { buf.append(\n); if (tag.equals(JSP_ROOT)) { - appendPageDirective(); + if (compiler.getCompilationContext().isTagFile()) { + appendTagDirective(); + } else { + appendPageDirective(); + } } if (body != null) { body.visit(this); -430,9 +434,27 * document, and since XML allows only single-value attributes, * the values of multiple import attributes must be combined into one, * separated by comma. + * + * If the given page directive contains just 'contentType' and/or + * 'pageEncoding' attributes, we ignore it, as we've already appended + * a page directive containing just these two attributes. */ private void appendPageDirective(Node.PageDirective pageDir) { + boolean append = false; Attributes attrs = pageDir.getAttributes(); + int len = attrs.getLength(); + for (int i=0; ilen; i++) { + String attrName = attrs.getQName(i); + if (!pageEncoding.equals(attrName) + !contentType.equals(attrName)) { + append = true; + break; + } + } + if (!append) { + return; + } + buf.append().append(JSP_PAGE_DIRECTIVE); buf.append(\n); -441,7 +463,6 buf.append(jspId++).append(\\n); // append remaining attributes - int len = attrs.getLength(); for (int i=0; ilen; i++) { String attrName = attrs.getQName(i); if (import.equals(attrName) || contentType.equals(attrName) -449,7 +470,7 /* * Page directive's 'import' attribute is considered * further down, and its 'pageEncoding' and 'contentType' - * attributes are ignored, since we've already created + * attributes are ignored, since we've already appended * a new page directive containing just these two * attributes */ -477,6 +498,71 buf.append(/\n); } + /* + * Appends a page directive with 'pageEncoding' and 'contentType'
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
luehe 2002/11/06 12:58:10 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: In XML view, always create page directive with 'contentType' and 'pageDirective' attributes, and append it right after the jsp:root start element, and suppress the 'contentType' and 'pageDirective' attributes from any subsequent page directive Revision ChangesPath 1.16 +35 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- PageDataImpl.java 6 Nov 2002 20:14:19 - 1.15 +++ PageDataImpl.java 6 Nov 2002 20:58:10 - 1.16 -405,8 +405,11 if (attrs != null) { printAttributes(attrs); } - if (body != null || text != null) { + if (tag.equals(JSP_ROOT) || body != null || text != null) { buf.append(\n); + if (tag.equals(JSP_ROOT)) { + appendPageDirective(); + } if (body != null) { body.visit(this); } else { -441,8 +444,15 int len = attrs.getLength(); for (int i=0; ilen; i++) { String attrName = attrs.getQName(i); - if (import.equals(attrName)) { - // Ignore page directive's import attribute for now + if (import.equals(attrName) || contentType.equals(attrName) + || pageEncoding.equals(attrName)) { + /* + * Page directive's 'import' attribute is considered + * further down, and its 'pageEncoding' and 'contentType' + * attributes are ignored, since we've already created + * a new page directive containing just these two + * attributes + */ continue; } String value = attrs.getValue(i); -479,6 +489,7 appendCDATA(text); buf.append(JSP_TEXT_END); + buf.append(\n); } else { appendCDATA(text); } -537,7 +548,24 * Appends XML prolog with encoding declaration. */ private void appendXmlProlog() { - buf.append(?xml version=\1.0\ encoding=\UTF-8\ ?); + buf.append(?xml version=\1.0\ encoding=\UTF-8\ ?\n); + } + + /* + * Appends a page directive with 'pageEncoding' and 'contentType' + * attributes whose values are derived from pageInfo. + */ + private void appendPageDirective() { + buf.append().append(JSP_PAGE_DIRECTIVE); + buf.append(\n); + + // append jsp:id + buf.append( ).append(jsp:id).append(=\); + buf.append(jspId++).append(\\n); + buf.append( ).append(pageEncoding).append(=\UTF-8\\n); + buf.append( ).append(contentType).append(=\); + buf.append(pageInfo.getContentType()).append(\\n); + buf.append(/\n); } } } -- 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/compiler PageDataImpl.java
luehe 2002/10/28 10:49:07 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Added support for jsp:invoke and jsp:doBody to XML view of tag files. Revision ChangesPath 1.12 +11 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- PageDataImpl.java 21 Oct 2002 20:13:32 - 1.11 +++ PageDataImpl.java 28 Oct 2002 18:49:07 - 1.12 -352,6 +352,14 public void visit(Node.JspText n) throws JasperException { appendTag(JSP_TEXT, n.getAttributes(), n.getBody()); } + + public void visit(Node.DoBodyAction n) throws JasperException { + appendTag(JSP_DO_BODY, n.getAttributes(), n.getBody()); + } + +public void visit(Node.InvokeAction n) throws JasperException { + appendTag(JSP_INVOKE, n.getAttributes(), n.getBody()); + } public void visit(Node.TemplateText n) throws JasperException { /* -- 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/compiler PageDataImpl.java
luehe 2002/10/28 12:48:01 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Added support for tag, attribute, and variable directives to XML view (of tag files) Revision ChangesPath 1.13 +47 -50 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- PageDataImpl.java 28 Oct 2002 18:49:07 - 1.12 +++ PageDataImpl.java 28 Oct 2002 20:48:01 - 1.13 -251,7 +251,7 public void visit(Node.Root n) throws JasperException { if (n == this.root) { // top-level page - appendTag(JSP_ROOT, n.getAttributes(), n.getBody()); + appendTag(JSP_ROOT, n.getAttributes(), n.getBody(), null); } else { visitBody(n); } -266,7 +266,7 public void visit(Node.JspRoot n) throws JasperException { if (n == this.root) { // top-level jsp:root element - appendTag(JSP_ROOT, n.getAttributes(), n.getBody()); + appendTag(JSP_ROOT, n.getAttributes(), n.getBody(), null); } else { visitBody(n); } -286,79 +286,91 } public void visit(Node.Declaration n) throws JasperException { - appendTag(JSP_DECLARATION, n.getAttributes(), n.getText()); + appendTag(JSP_DECLARATION, n.getAttributes(), null, n.getText()); } public void visit(Node.Expression n) throws JasperException { - appendTag(JSP_EXPRESSION, n.getAttributes(), n.getText()); + appendTag(JSP_EXPRESSION, n.getAttributes(), null, n.getText()); } public void visit(Node.Scriptlet n) throws JasperException { - appendTag(JSP_SCRIPTLET, n.getAttributes(), n.getText()); + appendTag(JSP_SCRIPTLET, n.getAttributes(), null, n.getText()); } public void visit(Node.IncludeAction n) throws JasperException { - appendTag(JSP_INCLUDE, n.getAttributes(), n.getBody()); + appendTag(JSP_INCLUDE, n.getAttributes(), n.getBody(), null); } public void visit(Node.ForwardAction n) throws JasperException { - appendTag(JSP_FORWARD, n.getAttributes(), n.getBody()); + appendTag(JSP_FORWARD, n.getAttributes(), n.getBody(), null); } public void visit(Node.GetProperty n) throws JasperException { - appendTag(JSP_GET_PROPERTY, n.getAttributes(), n.getBody()); + appendTag(JSP_GET_PROPERTY, n.getAttributes(), n.getBody(), null); } public void visit(Node.SetProperty n) throws JasperException { - appendTag(JSP_SET_PROPERTY, n.getAttributes(), n.getBody()); + appendTag(JSP_SET_PROPERTY, n.getAttributes(), n.getBody(), null); } public void visit(Node.ParamAction n) throws JasperException { - appendTag(JSP_PARAM, n.getAttributes(), n.getBody()); + appendTag(JSP_PARAM, n.getAttributes(), n.getBody(), null); } public void visit(Node.ParamsAction n) throws JasperException { - appendTag(JSP_PARAMS, n.getAttributes(), n.getBody()); + appendTag(JSP_PARAMS, n.getAttributes(), n.getBody(), null); } public void visit(Node.FallBackAction n) throws JasperException { - appendTag(JSP_FALLBACK, n.getAttributes(), n.getBody()); + appendTag(JSP_FALLBACK, n.getAttributes(), n.getBody(), null); } public void visit(Node.UseBean n) throws JasperException { - appendTag(JSP_USE_BEAN, n.getAttributes(), n.getBody()); + appendTag(JSP_USE_BEAN, n.getAttributes(), n.getBody(), null); } public void visit(Node.PlugIn n) throws JasperException { - appendTag(JSP_PLUGIN, n.getAttributes(), n.getBody()); + appendTag(JSP_PLUGIN, n.getAttributes(), n.getBody(), null); } public void visit(Node.NamedAttribute n) throws JasperException { -appendTag(JSP_ATTRIBUTE, n.getAttributes(), n.getBody()); +appendTag(JSP_ATTRIBUTE, n.getAttributes(), n.getBody(), null); } public void visit(Node.JspBody n) throws JasperException { -appendTag(JSP_BODY, n.getAttributes(), n.getBody()); +appendTag(JSP_BODY, n.getAttributes(), n.getBody(), null); } public void visit(Node.CustomTag n) throws JasperException { - appendTag(n.getName(), n.getAttributes(), n.getBody()); + appendTag(n.getName(), n.getAttributes(), n.getBody(),
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java
luehe 2002/10/16 13:15:32 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Removed outdated comments Revision ChangesPath 1.7 +3 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- PageDataImpl.java 1 Aug 2002 21:17:58 - 1.6 +++ PageDataImpl.java 16 Oct 2002 20:15:32 - 1.7 @@ -279,17 +279,14 @@ } public void visit(Node.Declaration n) throws JasperException { - // jsp:declaration has no attributes, except for jsp:id appendTag(JSP_DECLARATION, n.getAttributes(), n.getText()); } public void visit(Node.Expression n) throws JasperException { - // jsp:scriptlet has no attributes, except for jsp:id appendTag(JSP_EXPRESSION, n.getAttributes(), n.getText()); } public void visit(Node.Scriptlet n) throws JasperException { - // jsp:scriptlet has no attributes, except for jsp:id appendTag(JSP_SCRIPTLET, n.getAttributes(), n.getText()); } @@ -346,7 +343,6 @@ } public void visit(Node.JspText n) throws JasperException { - // jsp:text has no attributes, except for jsp:id appendTag(JSP_TEXT, n.getAttributes(), n.getBody()); } -- 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/compiler PageDataImpl.java
luehe 2002/10/16 16:23:53 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Fixed 4764102: XML view of jsp page contains jsp:root elements nested in other jsp:root element Revision ChangesPath 1.8 +15 -7 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- PageDataImpl.java 16 Oct 2002 20:15:32 - 1.7 +++ PageDataImpl.java 16 Oct 2002 23:23:53 - 1.8 @@ -175,7 +175,10 @@ public void visit(Node.Root n) throws JasperException { visitBody(n); - root.setAttributes(rootAttrs); + if (n == this.root) { + // top-level page + this.root.setAttributes(rootAttrs); + } } public void visit(Node.JspRoot n) throws JasperException { @@ -199,7 +202,7 @@ visitBody(n); if (n == this.root) { // top-level jsp:root element - root.setAttributes(rootAttrs); + this.root.setAttributes(rootAttrs); } } @@ -211,7 +214,7 @@ if (attrs != null) { String location = attrs.getValue(uri); if (location == null) { - // JSP 2.0 CLARIFICATION NEEDED + // XXX JSP 2.0 CLARIFICATION NEEDED location = attrs.getValue(tagdir); } String prefix = attrs.getValue(prefix); @@ -247,7 +250,12 @@ * Visits root node of JSP page in JSP syntax. */ public void visit(Node.Root n) throws JasperException { - appendTag(JSP_ROOT, n.getAttributes(), n.getBody()); + if (n == this.root) { + // top-level page + appendTag(JSP_ROOT, n.getAttributes(), n.getBody()); + } else { + visitBody(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/compiler PageDataImpl.java
luehe 2002/10/16 16:53:02 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Fixed 4764157: jsp:text elements in the XML view of a JSP page contain no jsp:id attribute Revision ChangesPath 1.9 +11 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- PageDataImpl.java 16 Oct 2002 23:23:53 - 1.8 +++ PageDataImpl.java 16 Oct 2002 23:53:02 - 1.9 @@ -456,7 +456,14 @@ private void appendText(char[] text, boolean createJspTextElement) { if (createJspTextElement) { - buf.append(JSP_TEXT_START); + buf.append().append(JSP_TEXT); + buf.append(\n); + + // append jsp:id + buf.append( ).append(jsp:id).append(=\); + buf.append(jspId++).append(\\n); + buf.append(\n); + appendCDATA(text); buf.append(JSP_TEXT_END); } else { -- 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/compiler PageDataImpl.java
luehe 2002/10/16 18:35:46 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: Fixed default JSP version number in XML view at 2.0 (was: 1.2) Revision ChangesPath 1.10 +4 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- PageDataImpl.java 16 Oct 2002 23:53:02 - 1.9 +++ PageDataImpl.java 17 Oct 2002 01:35:46 - 1.10 @@ -94,7 +94,7 @@ public class PageDataImpl extends PageData implements TagConstants { private static final String JSP_NAMESPACE = http://java.sun.com/JSP/Page;; -private static final String JSP_VERSION = 1.2; +private static final String JSP_VERSION = 2.0; private static final String CDATA_START_SECTION = ![CDATA[\n; private static final String CDATA_END_SECTION = ]]\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/compiler PageDataImpl.java
kinman 02/05/17 16:44:00 Modified:jasper2/src/share/org/apache/jasper/compiler PageDataImpl.java Log: - Recreate the InputStream in case it is used twice. Revision ChangesPath 1.3 +10 -15 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java Index: PageDataImpl.java === RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- PageDataImpl.java 24 Apr 2002 21:12:52 - 1.2 +++ PageDataImpl.java 17 May 2002 23:44:00 - 1.3 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v 1.2 2002/04/24 21:12:52 kinman Exp $ - * $Revision: 1.2 $ - * $Date: 2002/04/24 21:12:52 $ + * $Header: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/PageDataImpl.java,v 1.3 2002/05/17 23:44:00 kinman Exp $ + * $Revision: 1.3 $ + * $Date: 2002/05/17 23:44:00 $ * * * @@ -101,9 +101,6 @@ // default xmlns:jsp and version attributes of jsp:root element private static AttributesImpl defaultJspRootAttrs; -// input stream of the XML view -private InputStream is; - // string buffer used to build XML view private StringBuffer buf; @@ -136,14 +133,6 @@ SecondPassVisitor secondPassVisitor = new SecondPassVisitor(page.getRoot(), buf); page.visit(secondPassVisitor); - - // Turn StringBuffer into InputStream -try { -is = new ByteArrayInputStream(buf.toString().getBytes(UTF-8)); -} catch (UnsupportedEncodingException uee) { - // should never happen -throw new RuntimeException(uee.toString()); -} } /** @@ -152,7 +141,13 @@ * @return the input stream of the XML view */ public InputStream getInputStream() { - return is; + // Turn StringBuffer into InputStream +try { +return new ByteArrayInputStream(buf.toString().getBytes(UTF-8)); +} catch (UnsupportedEncodingException uee) { + // should never happen +throw new RuntimeException(uee.toString()); +} } /* -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]