cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2005-03-09 Thread kinman
kinman  2005/03/09 11:13:20

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Fix a bug: if \${} appears at the beginning of a page, the escape is not
recognized.
  
  Revision  ChangesPath
  1.90  +5 -1  
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.89
  retrieving revision 1.90
  diff -u -r1.89 -r1.90
  --- Parser.java   17 Mar 2004 19:23:03 -  1.89
  +++ Parser.java   9 Mar 2005 19:13:20 -   1.90
  @@ -1381,7 +1381,11 @@
CharArrayWriter ttext = new CharArrayWriter();
// Output the first character
int ch = reader.nextChar();
  - ttext.write(ch);
  +if (ch == '\\') {
  +reader.pushChar();
  +} else {
  +ttext.write(ch);
  +}
   
while (reader.hasMoreInput()) {
ch = reader.nextChar();
  
  
  

-
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 Parser.java

2003-12-15 Thread kinman
kinman  2003/12/15 11:24:20

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Revert the last commit, as it did not conform to spec, and breaks TCK tests.
  
  Revision  ChangesPath
  1.87  +3 -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.86
  retrieving revision 1.87
  diff -u -r1.86 -r1.87
  --- Parser.java   11 Dec 2003 18:24:21 -  1.86
  +++ Parser.java   15 Dec 2003 19:24:20 -  1.87
  @@ -1090,7 +1090,6 @@
 "<" + tag );
}
   
  -reader.skipSpaces();
   if( reader.matchesETag( tag ) ) {
   // EmptyBody
   return;
  
  
  

-
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 Parser.java

2003-09-23 Thread kinman
kinman  2003/09/23 13:47:23

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Fix bug: \<%foo%> in template text hides expression.
  
  Revision  ChangesPath
  1.82  +10 -7 
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.81
  retrieving revision 1.82
  diff -u -r1.81 -r1.82
  --- Parser.java   23 Sep 2003 00:08:22 -  1.81
  +++ Parser.java   23 Sep 2003 20:47:23 -  1.82
  @@ -1486,10 +1486,13 @@
ttext.write('\\');
break;
}
  - ch = reader.nextChar();
  - // Looking for \% or \$
  - if (ch != '%' && ch != '$') {
  - ttext.write('\\');
  +char next = (char)reader.peekChar();
  +// Looking for \% or \$
  +// TODO: only recognize \$ if isELIgnored is false, but since
  +// it can be set in a page directive, it cannot be determined
  +// here.  Argh!
  +if (next == '%' || next == '$') {
  +ch = reader.nextChar();
   }
}
ttext.write(ch);
  
  
  

-
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 Parser.java

2003-09-22 Thread kinman
kinman  2003/09/22 17:08:22

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Fix a bug in Parser.isTemplateText():
  
Since '%' is not a delimiter in JspReader.parseToken(), an expression
"<%String s;%>" after a template text would be treated as a template
text when mappedfile option is set to true, and got concatenated to
the template text.
  
  Revision  ChangesPath
  1.81  +4 -16 
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.80
  retrieving revision 1.81
  diff -u -r1.80 -r1.81
  --- Parser.java   2 Sep 2003 21:39:59 -   1.80
  +++ Parser.java   23 Sep 2003 00:08:22 -  1.81
  @@ -1424,19 +1424,7 @@
   String tagIdentifier = reader.parseToken(false);
   reader.reset(m);
   
  -if (tagIdentifier.equals("%--")) {
  -return false;
  -}
  -if (tagIdentifier.equals("%@")) {
  -return false;
  -}
  -if (tagIdentifier.equals("%!")) {
  -return false;
  -}
  -if (tagIdentifier.equals("%=")) {
  -return false;
  -}
  -if (tagIdentifier.equals("%")) {
  +if (tagIdentifier.startsWith("%")) {
   return false;
   }
   if (tagIdentifier.startsWith("jsp:")) {
  
  
  

-
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 Parser.java

2003-08-11 Thread remm
remm2003/08/09 12:18:22

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Bug 22266: Keep template text together with mappedfile="true".
  
  Revision  ChangesPath
  1.78  +58 -6 
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.77
  retrieving revision 1.78
  diff -u -r1.77 -r1.78
  --- Parser.java   23 Jul 2003 19:23:46 -  1.77
  +++ Parser.java   9 Aug 2003 19:18:22 -   1.78
  @@ -102,6 +102,7 @@
   private boolean directivesOnly;
   private URL jarFileUrl;
   private PageInfo pageInfo;
  +private boolean mappedFile;
   
   // Virtual body content types, to make parsing a little easier.
   // These are not accessible from outside the parser.
  @@ -128,6 +129,7 @@
this.directivesOnly = directivesOnly;
this.jarFileUrl = jarFileUrl;
   start = reader.mark();
  +mappedFile = ctxt.getOptions().getMappedFile();
   }
   
   /**
  @@ -1403,6 +1405,54 @@
return true;
   }
   
  +/**
  + * Determines whether the current text is template text
  + * or not.  Assumes the reader is at the character 
  + * following the "<".
  + */
  +private boolean isTemplateText() throws JasperException {
  +
  +Mark m = reader.mark();
  +int ch = reader.peekChar();
  +if (ch == '/') {
  +reader.nextChar();
  +}
  +String tagIdentifier = reader.parseToken(false);
  +reader.reset(m);
  +
  +if (tagIdentifier.equals("%--")) {
  +return false;
  +}
  +if (tagIdentifier.equals("%@")) {
  +return false;
  +}
  +if (tagIdentifier.equals("%!")) {
  +return false;
  +}
  +if (tagIdentifier.equals("%=")) {
  +return false;
  +}
  +if (tagIdentifier.equals("%")) {
  +return false;
  +}
  +if (tagIdentifier.startsWith("jsp:")) {
  +return false;
  +}
  +
  +// Check if this is a user-defined tag.
  +int i = tagIdentifier.indexOf(':');
  +if (i == -1) {
  +return true;
  +}
  +String prefix = tagIdentifier.substring(0, i);
  +String uri = pageInfo.getURI(prefix);
  +if (uri == null) {
  +return true;
  +}
  +
  +return false;
  +}
  +
   /*
*
*/
  @@ -1419,9 +1469,11 @@
while (reader.hasMoreInput()) {
ch = reader.nextChar();
if (ch == '<') {
  - reader.pushChar();
  - break;
  - }
  +if (!mappedFile || !isTemplateText()) {
  +reader.pushChar();
  +break;
  +}
  + }
else if( ch == '$' ) {
if (!reader.hasMoreInput()) {
ttext.write('$');
  
  
  

-
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 Parser.java PageInfo.java

2003-07-23 Thread luehe
luehe   2003/07/23 12:23:46

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
PageInfo.java
  Log:
  Preparation work for new 'static include' rules
  
  Revision  ChangesPath
  1.77  +5 -5  
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.76
  retrieving revision 1.77
  diff -u -r1.76 -r1.77
  --- Parser.java   21 Jul 2003 20:44:20 -  1.76
  +++ Parser.java   23 Jul 2003 19:23:46 -  1.77
  @@ -459,7 +459,7 @@
  location,
  err));
}
  - pageInfo.addPrefixToURIMapping(prefix, uri);
  + pageInfo.addPrefixMapping(prefix, uri);
} else {
String tagdir = attrs.getValue("tagdir");
if (tagdir != null) {
  @@ -473,7 +473,7 @@
   tagdir,
   err));
}
  - pageInfo.addPrefixToURIMapping(prefix, urnTagdir);
  + pageInfo.addPrefixMapping(prefix, urnTagdir);
}
}
}
  
  
  
  1.32  +51 -11
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.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- PageInfo.java 21 Jul 2003 21:52:51 -  1.31
  +++ PageInfo.java 23 Jul 2003 19:23:46 -  1.32
  @@ -79,8 +79,8 @@
   
   private BeanRepository beanRepository;
   private HashMap taglibsMap;
  -private Hashtable prefixMapper;
  -
  +private HashMap jspPrefixMapper;
  +private HashMap xmlPrefixMapper;
   private String language = "java";
   private String xtends = Constants.JSP_SERVLET_BASE;
   private String contentType = null;
  @@ -128,7 +128,8 @@
   PageInfo(BeanRepository beanRepository) {
this.beanRepository = beanRepository;
this.taglibsMap = new HashMap();
  - this.prefixMapper = new Hashtable();
  + this.jspPrefixMapper = new HashMap();
  + this.xmlPrefixMapper = new HashMap();
this.imports = new Vector();
   this.dependants = new Vector();
this.includePrelude = new Vector();
  @@ -344,19 +345,58 @@
* @param prefix The prefix to map
* @param uri The URI to be associated with the given prefix
*/
  -public void addPrefixToURIMapping(String prefix, String uri) {
  - prefixMapper.put(prefix, uri);
  +public void addPrefixMapping(String prefix, String uri) {
  + jspPrefixMapper.put(prefix, uri);
   }
   
   /*
  - * Maps the given prefix to its URI.
  + * Pushes the given URI onto the stack of URIs to which the given prefix
  + * is mapped.
*
  - * @param prefix The prefix to map
  + * @param prefix The prefix whose stack of URIs is to be pushed
  + * @param uri The URI to be pushed onto the stack
  + */
  +public void pushPrefixMapping(String prefix, String uri) {
  + LinkedList stack = (LinkedList) xmlPrefixMapper.get(prefix);
  + if (stack == null) {
  + stack = new LinkedList();
  + }
  + stack.addFirst(uri);
  +}
  +
  +/*
  + * Removes the URI at the top of the stack of URIs to which the given 
  + * prefix is mapped. 
  + *
  + * @param prefix The prefix whose stack of URIs is to be popped
  + */
  +public void popPrefixMapping(String prefix) {
  + LinkedList stack = (LinkedList) xmlPrefixMapper.get(prefix);
  + if (stack == null || stack.size() == 0) {
  + // XXX throw new Exception("XXX");
  + }
  + stack.removeFirst();
  +}
  +
  +/*
  + * Returns the URI to which the given prefix maps.
  + *
  + * @param prefix The prefix whose URI is sought
*
* @return The URI to which the given prefix maps
*/
   public String getURI(String prefix) {
  - return (String) prefixMapper.get(prefix);
  +
  + String uri = null;
  +
  + LinkedList stack = (LinkedList) xmlPrefixMapper.get(prefix);
  + if (stack == null || stack.size() == 0) {
  + uri = (String) jspPrefixMapper.get(prefix);
  + } else {
  + uri = (String) stack.getFirst();
  + }
  +
  + return uri;
   }
   
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
Fo

cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2003-05-31 Thread kinman
kinman  2003/05/30 13:16:19

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - In a template text, the char after '$' are not handled correctly.
  
  Revision  ChangesPath
  1.75  +6 -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.74
  retrieving revision 1.75
  diff -u -r1.74 -r1.75
  --- Parser.java   21 May 2003 18:09:33 -  1.74
  +++ Parser.java   30 May 2003 20:16:19 -  1.75
  @@ -1432,6 +1432,8 @@
break;
}
ttext.write('$');
  + reader.pushChar();
  + continue;
}
else if (ch == '\\') {
if (!reader.hasMoreInput()) {
  @@ -1501,7 +1503,7 @@
   ch = reader.nextChar();
   if (ch != '{') {
   ttext.write('$');
  -ttext.write(ch);
  +reader.pushChar();
   continue;
   }
   // Create a template text node
  
  
  

-
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 Parser.java

2003-03-31 Thread luehe
luehe   2003/03/31 14:47:27

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Changed TLV invocation so that in the case where a single URI is
  mapped to more than one prefix, the prefix of the *first* URI must be
  used for the TLV invocation
  
  Revision  ChangesPath
  1.72  +18 -15
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.71
  retrieving revision 1.72
  diff -u -r1.71 -r1.72
  --- Parser.java   31 Mar 2003 19:15:34 -  1.71
  +++ Parser.java   31 Mar 2003 22:47:27 -  1.72
  @@ -448,23 +448,26 @@
String prefix = attrs.getValue("prefix");
if (prefix != null) {
if (uri != null) {
  - // Errors to be checked in Validator
  - String[] location = ctxt.getTldLocation(uri);
  - taglibs.put(uri,
  - new TagLibraryInfoImpl(ctxt, parserController,
  -prefix, uri, location,
  -err));
  + if (taglibs.get(uri) == null) {
  + String[] location = ctxt.getTldLocation(uri);
  + taglibs.put(uri,
  + new TagLibraryInfoImpl(ctxt, parserController,
  +prefix, uri, location,
  +err));
  + }
prefixMapper.put(prefix, uri);
} else {
String tagdir = attrs.getValue("tagdir");
if (tagdir != null) {
String urnTagdir = URN_JSPTAGDIR + tagdir;
  - taglibs.put(urnTagdir,
  - new ImplicitTagLibraryInfo(ctxt,
  -parserController,
  -prefix, 
  -tagdir,
  -err));
  + if (taglibs.get(urnTagdir) == null) {
  + taglibs.put(urnTagdir,
  + new ImplicitTagLibraryInfo(ctxt,
  +parserController,
  +prefix, 
  +tagdir,
  +err));
  + }
prefixMapper.put(prefix, urnTagdir);
}
}
  
  
  

-
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 Parser.java

2003-02-28 Thread luehe
luehe   2003/02/28 12:12:26

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Use correct error code
  
  Revision  ChangesPath
  1.67  +5 -7  
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.66
  retrieving revision 1.67
  diff -u -r1.66 -r1.67
  --- Parser.java   28 Feb 2003 00:12:41 -  1.66
  +++ Parser.java   28 Feb 2003 20:12:26 -  1.67
  @@ -1234,15 +1234,13 @@
parseForward(parent);
} else if (reader.matches(INVOKE_ACTION)) {
if (!isTagFile) {
  - err.jspError(reader.mark(),
  -  "jsp.error.invalid.action.isnottagfile",
  + err.jspError(reader.mark(), "jsp.error.action.isnottagfile",
 "

cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java JspDocumentParser.java Node.java Validator.java

2003-02-26 Thread luehe
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  ChangesPath
  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 -  1.64
  +++ Parser.java   26 Feb 2003 17:58:07 -  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.java24 Feb 2003 23:43:59 -  1.44
  +++ JspDocumentParser.java26 Feb 2003 17:58:07 -  1.45
  @@ -167,7 +167,7 @@
try {
if (parent == null) {
// create dummy  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 -  1.62
  +++ Node.java 26 Feb 2003 17:58:07 -  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.java26 Feb 2003 16:51:07 -  1.83
  +++ Validator.java26 Feb 2003 17:58:07 -  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),
 

cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2003-02-26 Thread luehe
luehe   2003/02/26 09:10:49

  Modified:jasper2/src/share/org/apache/jasper/resources
messages.properties
   jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Fixed 17394: Misleading error message generated when jsp:output is
  used in an invalid context
  
  Revision  ChangesPath
  1.101 +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.100
  retrieving revision 1.101
  diff -u -r1.100 -r1.101
  --- messages.properties   26 Feb 2003 01:57:30 -  1.100
  +++ messages.properties   26 Feb 2003 17:10:48 -  1.101
  @@ -356,6 +356,7 @@
   jsp.error.xml.invalidHighSurrogate = High surrogate bits in UTF-8 sequence must not 
exceed 0x10 but found 0x{0}.
   jsp.error.multiple.jspoutput = Cannot have multiple occurrences of 

   jsp.error.jspoutput.nonemptybody= must not have a body
  +jsp.error.jspoutput.invalidUse= must not be used in standard 
syntax
   jsp.error.attributes.not.allowed = {0} must not have any attributes
   jsp.error.tagfile.badSuffix=Missing \".tag\" suffix in tag file path {0}
   jsp.error.tagfile.illegalPath=Illegal tag file path: {0}, must start with 
\"/WEB-INF/tags\" or \"/META-INF/tags\"
  
  
  
  1.64  +5 -3  
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.63
  retrieving revision 1.64
  diff -u -r1.63 -r1.64
  --- Parser.java   24 Feb 2003 23:43:59 -  1.63
  +++ Parser.java   26 Feb 2003 17:10:48 -  1.64
  @@ -1266,6 +1266,8 @@
err.jspError(start, "jsp.error.params.invalidUse");
} else if (reader.matches(PARAM_ACTION)) {
err.jspError(start, "jsp.error.param.invalidUse");
  + } else if (reader.matches(OUTPUT_ACTION)) {
  + err.jspError(start, "jsp.error.jspoutput.invalidUse");
} else {
err.jspError(start, "jsp.error.badStandardAction");
}
  
  
  

-
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 Parser.java

2003-02-03 Thread luehe
luehe   2003/02/03 16:04:54

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Fixed bug that prevented EL expressions from being used in the body of
  a  of a 
  
  Revision  ChangesPath
  1.59  +5 -3  
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.58
  retrieving revision 1.59
  diff -u -r1.58 -r1.59
  --- Parser.java   3 Feb 2003 23:11:59 -   1.58
  +++ Parser.java   4 Feb 2003 00:04:53 -   1.59
  @@ -1832,6 +1832,8 @@
if ("value".equals(name)) {
return TagInfo.BODY_CONTENT_JSP;
}
  + } else if (n instanceof Node.JspElement) {
  + return TagInfo.BODY_CONTENT_JSP;
}
   
return JAVAX_BODY_CONTENT_TEMPLATE_TEXT;
  
  
  

-
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 Parser.java

2003-01-17 Thread luehe
luehe   2003/01/17 12:02:25

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Fixed 16088: Translation error not generated if body of jsp:attribute, providing an 
attribute value of type JspFragment, contains a scripting element
  
  Revision  ChangesPath
  1.57  +5 -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.56
  retrieving revision 1.57
  diff -u -r1.56 -r1.57
  --- Parser.java   13 Jan 2003 23:50:48 -  1.56
  +++ Parser.java   17 Jan 2003 20:02:25 -  1.57
  @@ -1702,7 +1702,8 @@
   reader.skipSpaces();
   }
   parseBody(namedAttributeNode, "jsp:attribute", 
  -   TagInfo.BODY_CONTENT_JSP);
  +   getAttributeBodyType(parent,
  +attrs.getValue("name")));
   if (namedAttributeNode.isTrim()) {
   Node.Nodes subElems = namedAttributeNode.getBody();
if (subElems != null) {
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2003-01-10 Thread luehe
luehe   2003/01/10 16:51:36

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Fixed 15966: Jasper parser is incorrectly handling empty jsp:body elements
  
  Revision  ChangesPath
  1.55  +11 -29
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.54
  retrieving revision 1.55
  diff -u -r1.54 -r1.55
  --- Parser.java   11 Jan 2003 00:11:06 -  1.54
  +++ Parser.java   11 Jan 2003 00:51:36 -  1.55
  @@ -1597,38 +1597,20 @@
   }
   
   /*
  - * JspBodyBody ::=  ( S? '>' 
  - *( (   ScriptlessBody 
  - *| Body
  - *| TagDependentBody
  - *  ) - ''
  - *) '' 
  - *  )
  - *  |   ( ATTR[ !value ] S? JspBodyEmptyBody )
  - *
  - * JspBodyEmptyBody ::= '/>'
  - *  |   '>'
  - *  |   
  - *
  + * Parses jsp:body action.
*/
   private void parseJspBody(Node parent, String bodyType) 
   throws JasperException 
   {
   Mark start = reader.mark();
  -reader.skipSpaces();
  -
  -if (!reader.matches(">")) {
  - err.jspError(reader.mark(),
  -  "jsp.error.attributes.not.allowed",
  -  "" );
  - }
  -
Node bodyNode = new Node.JspBody(start, parent);
  - if( reader.matches( "" ) ) {
  - // Body was empty.  This is illegal, according to the grammar.
  - err.jspError(reader.mark(),"jsp.error.empty.body.not.allowed",
  -  "" );
  - } else {
  +
  + reader.skipSpaces();
  + if (!reader.matches("/>")) {
  + if (!reader.matches(">")) {
  + err.jspError(start, "jsp.error.unterminated",
  +  "
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-12-16 Thread luehe
luehe   2002/12/16 15:02:39

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  updated productions of jsp:params and jsp:fallback so that they accept jsp:body
  
  Revision  ChangesPath
  1.50  +25 -9 
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.49
  retrieving revision 1.50
  diff -u -r1.49 -r1.50
  --- Parser.java   16 Dec 2002 22:21:15 -  1.49
  +++ Parser.java   16 Dec 2002 23:02:39 -  1.50
  @@ -1064,8 +1064,15 @@
   }
   
   /*
  - * Params ::=   '/>'
  - *| ( '>' S? Param* '' )
  + * Params ::=  `>' S?
  + *  (   ( `'
  + *( ( S? Param+ S? `' )
  + *  | 
  + *)
  + *  )
  + *| Param+
  + *  )
  + *  ''
*/
   private void parseJspParams(Node parent) throws JasperException {
Node jspParamsNode = new Node.ParamsAction(start, parent);
  @@ -1075,10 +1082,19 @@
   
   /*
* Fallback ::=   '/>'
  - *  | ( '>'
  - *  ( Char* - ( Char* '' ) )
  - *  ''
  - *)
  + *   | ( `>' S? `'
  + *   (   ( S?
  + * ( Char* - ( Char* `' ) )
  + * `' S?
  + *   )
  + * | 
  + *   )
  + *   `'
  + * )
  + *   | ( '>'
  + *   ( Char* - ( Char* '' ) )
  + *   ''
  + * )
*/
   private void parseFallBack(Node parent) throws JasperException {
Node fallBackNode = new Node.FallBackAction(start, parent);
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java Validator.java

2002-12-16 Thread luehe
luehe   2002/12/16 09:34:32

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
Validator.java
  Log:
  Fixed 15391: Jasper generates a translation error if the body of jsp:params is 
supplied though jsp:body
  
  Revision  ChangesPath
  1.48  +6 -16 
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.47
  retrieving revision 1.48
  diff -u -r1.47 -r1.48
  --- Parser.java   16 Dec 2002 16:13:28 -  1.47
  +++ Parser.java   16 Dec 2002 17:34:32 -  1.48
  @@ -1068,18 +1068,9 @@
*| ( '>' S? Param* '' )
*/
   private void parseJspParams(Node parent) throws JasperException {
  -if( reader.matches( "/>" ) ) {
  -// No elements, don't create node.
  -}
  -else if( reader.matches( ">" ) ) {
  -reader.skipSpaces();
  -Node jspParamsNode = new Node.ParamsAction(start, parent);
  -parseBody(jspParamsNode, "jsp:params", JAVAX_BODY_CONTENT_PARAM );
  -}
  -else {
  -err.jspError(reader.mark(), "jsp.error.unterminated",
  -"
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-12-13 Thread luehe
luehe   2002/12/13 07:44:39

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Fixed 15360: jsp:fallback action used outside of the expected context yields 
misleading error message.
  
  Revision  ChangesPath
  1.46  +5 -3  
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.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- Parser.java   12 Dec 2002 22:57:43 -  1.45
  +++ Parser.java   13 Dec 2002 15:44:39 -  1.46
  @@ -1196,6 +1196,8 @@
parsePlugin(parent);
} else if (reader.matches("element")) {
parseElement(parent);
  + } else if (reader.matches("fallback")) {
  + err.jspError(start, "jsp.error.fallback.invalidUse");
} else if (reader.matches("params")) {
err.jspError(start, "jsp.error.params.invalidUse");
} else if (reader.matches("param")) {
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-12-09 Thread luehe
luehe   2002/12/09 13:51:57

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Standard syntax:
  
  - Added uri and local name to custom action attributes.
  - Enforce restriction that if a dynamic attribute has a prefix that
doesn't map to a namespace (taglib), a translation error is caused.
  
  Revision  ChangesPath
  1.42  +26 -8 
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.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- Parser.java   5 Dec 2002 17:56:43 -   1.41
  +++ Parser.java   9 Dec 2002 21:51:56 -   1.42
  @@ -199,11 +199,29 @@
* Note: JSP and XML spec does not allow while spaces around Eq.  It is
* added to be backward compatible with Tomcat, and with other xml parsers.
*/
  -private boolean parseAttribute(AttributesImpl attrs) throws JasperException {
  - String name = parseName();
  - if (name == null)
  +private boolean parseAttribute(AttributesImpl attrs)
  + throws JasperException {
  +
  + // Get the qualified name
  + String qName = parseName();
  + if (qName == null)
return false;
   
  + // Determine prefix and local name components
  + String localName = qName;
  + String uri = "";
  + int index = qName.indexOf(':');
  + if (index != -1) {
  + String prefix = qName.substring(0, index);
  + TagLibraryInfo tagLibInfo = (TagLibraryInfo) taglibs.get(prefix);
  + if (tagLibInfo == null) {
  + err.jspError(reader.mark(),
  +  "jsp.error.attribute.invalidPrefix", prefix);
  + }
  + uri = tagLibInfo.getURI();
  + localName = qName.substring(index+1);
  + }
  +
reader.skipSpaces();
if (!reader.matches("="))
err.jspError(reader.mark(), "jsp.error.attribute.noequal");
  @@ -218,8 +236,8 @@
watchString = "%>";
watchString = watchString + quote;

  - String attr = parseAttributeValue(watchString);
  - attrs.addAttribute("", name, name, "CDATA", attr);
  + String attrValue = parseAttributeValue(watchString);
  + attrs.addAttribute(uri, localName, qName, "CDATA", attrValue);
return true;
   }
   
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-11-22 Thread luehe
luehe   2002/11/22 17:49:40

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Fixed Bugtraq 4783771 ("No error if custom action in body of
   that does not accept rtexpr")
  
  Revision  ChangesPath
  1.40  +6 -3  
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.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- Parser.java   13 Nov 2002 19:50:42 -  1.39
  +++ Parser.java   23 Nov 2002 01:49:40 -  1.40
  @@ -1544,6 +1544,9 @@
   } else if (reader.matches("mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-11-13 Thread kinman
kinman  2002/11/13 11:50:42

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Add  in the standard systex.
  
  Revision  ChangesPath
  1.39  +16 -3 
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.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- Parser.java   8 Nov 2002 19:42:55 -   1.38
  +++ Parser.java   13 Nov 2002 19:50:42 -  1.39
  @@ -854,6 +854,16 @@
   parseEmptyBody(doBodyNode, "jsp:doBody");
   }
   
  +private void parseElement(Node parent) throws JasperException {
  + Attributes attrs = parseAttributes();
  + reader.skipSpaces();
  +
  +Node elementNode = new Node.JspElement(attrs, start, parent);
  +
  +parseOptionalBody( elementNode, "jsp:element", 
  +TagInfo.BODY_CONTENT_JSP );
  +}
  +
   /*
* For GetProperty:
* StdActionContent ::= Attributes EmptyBody
  @@ -1132,6 +1142,7 @@
*| 'setProperty'   StdActionContent
*| 'useBean'   StdActionContent
*| 'plugin'StdActionContent
  + *| 'element'   StdActionContent
*/
   private void parseAction(Node parent) throws JasperException {
Mark start = reader.mark();
  @@ -1162,6 +1173,8 @@
parseUseBean(parent);
} else if (reader.matches("plugin")) {
parsePlugin(parent);
  + } else if (reader.matches("element")) {
  + parseElement(parent);
} else {
err.jspError(start, "jsp.error.badaction");
}
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-09-27 Thread kinman

kinman  2002/09/27 17:46:28

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Fix 13058: Dynamic attributes specified in  body do not
take RT expressions.
  
  Revision  ChangesPath
  1.32  +8 -5  
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.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- Parser.java   12 Sep 2002 21:57:00 -  1.31
  +++ Parser.java   28 Sep 2002 00:46:28 -  1.32
  @@ -1715,8 +1715,8 @@
   private String getAttributeBodyType(Node n, String name) {
   
if (n instanceof Node.CustomTag) {
  - TagAttributeInfo[] tldAttrs =
  - ((Node.CustomTag)n).getTagInfo().getAttributes();
  + TagInfo tagInfo = ((Node.CustomTag)n).getTagInfo();
  + TagAttributeInfo[] tldAttrs = tagInfo.getAttributes();
for (int i=0; imailto:[EMAIL PROTECTED]>
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java TagFileProcessor.java

2002-09-04 Thread kinman

kinman  2002/09/04 10:59:11

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
TagFileProcessor.java
  Log:
  - Fix 12269: accepts lower case body content types.
  
  Revision  ChangesPath
  1.28  +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.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- Parser.java   29 Aug 2002 23:27:36 -  1.27
  +++ Parser.java   4 Sep 2002 17:59:11 -   1.28
  @@ -1498,10 +1498,10 @@
   err.jspError( reader.mark(), "jsp.error.not.in.template" );
   } else if (reader.matches("<%")) {
   err.jspError( reader.mark(), "jsp.error.not.in.template" );
  -err.jspError( reader.mark(), "jsp.error.not.in.template" );
   } else if (reader.matches("mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-08-01 Thread kinman

kinman  2002/08/01 13:55:04

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  - Fixed failures in watch dog tests.
  
  Revision  ChangesPath
  1.18  +4 -3  
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.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- Parser.java   31 Jul 2002 21:42:27 -  1.17
  +++ Parser.java   1 Aug 2002 20:55:04 -   1.18
  @@ -1060,6 +1060,7 @@
if (reader.matches("/>")) {
new Node.CustomTag(attrs, start, tagName, prefix, shortTagName,
   tagInfo, tagFileInfo, tagHandlerClass, parent);
  + return true;
}

   // Now we parse one of 'CustomActionTagDependent', 
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Parser.java

2002-07-08 Thread luehe

luehe   2002/07/08 16:47:55

  Modified:jasper2/src/share/org/apache/jasper/compiler Parser.java
  Log:
  Fixed Bug# 10126: NullPointerException when no uri defined in taglib directive
  
  Revision  ChangesPath
  1.7   +5 -5  
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.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Parser.java   20 Jun 2002 20:12:26 -  1.6
  +++ Parser.java   8 Jul 2002 23:47:55 -   1.7
  @@ -348,11 +348,11 @@
Attributes attrs = parseAttributes();
String uri = attrs.getValue("uri");
String prefix = attrs.getValue("prefix");
  - if (uri != null || prefix != null) {
  + if (uri != null && prefix != null) {
// Errors to be checked in Validator
String[] location = ctxt.getTldLocation(uri);
TagLibraryInfo tl = new TagLibraryInfoImpl(ctxt, prefix, uri,
  -location, err);
  +location, err);
taglibs.put(prefix, tl);
}
   
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: