kinman 2003/08/11 14:11:08 Modified: jasper2/src/share/org/apache/jasper/compiler ErrorDispatcher.java JspDocumentParser.java Parser.java jasper2/src/share/org/apache/jasper/resources messages.properties messages_es.properties messages_fr.properties messages_ja.properties Log: - Allow a taglib to be defined more than once in taglib directives, even in statically included files. - Remove need for keeping a Stack for prefix bookkeeping. Revision Changes Path 1.12 +24 -3 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ErrorDispatcher.java Index: ErrorDispatcher.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ErrorDispatcher.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- ErrorDispatcher.java 5 Feb 2003 23:39:20 -0000 1.11 +++ ErrorDispatcher.java 11 Aug 2003 21:11:07 -0000 1.12 @@ -244,7 +244,28 @@ * @param errCode Error code * @param arg1 First argument for parametric replacement * @param arg2 Second argument for parametric replacement + * @param arg3 Third argument for parametric replacement */ + + public void jspError(Mark where, String errCode, String arg1, String arg2, + String arg3) + throws JasperException { + dispatch(where, errCode, new Object[] {arg1, arg2, arg3}, null); + } + + /* + * Dispatches the given JSP parse error to the configured error handler. + * + * The given error code is localized. If it is not found in the + * resource bundle for localized error messages, it is used as the error + * message. + * + * @param n Node that caused the error + * @param errCode Error code + * @param arg1 First argument for parametric replacement + * @param arg2 Second argument for parametric replacement + */ + public void jspError(Node n, String errCode, String arg1, String arg2) throws JasperException { dispatch(n.getStart(), errCode, new Object[] {arg1, arg2}, null); 1.64 +5 -10 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.63 retrieving revision 1.64 diff -u -r1.63 -r1.64 --- JspDocumentParser.java 9 Aug 2003 14:55:46 -0000 1.63 +++ JspDocumentParser.java 11 Aug 2003 21:11:07 -0000 1.64 @@ -109,7 +109,6 @@ private boolean isTagFile; private boolean directivesOnly; private boolean isTop; - private LinkedList prefixMapLinkedList; /* * Constructor @@ -128,7 +127,6 @@ this.isTagFile = isTagFile; this.directivesOnly = directivesOnly; this.isTop = true; - this.prefixMapLinkedList = new LinkedList();; } /* @@ -560,9 +558,8 @@ if (taglibInfo != null) { pageInfo.addTaglib(uri, taglibInfo); pageInfo.pushPrefixMapping(prefix, uri); - prefixMapLinkedList.addLast(new Boolean(true)); } else { - prefixMapLinkedList.addLast(new Boolean(false)); + pageInfo.pushPrefixMapping(prefix, null); } } @@ -570,9 +567,7 @@ * Receives notification of the end of a Namespace mapping. */ public void endPrefixMapping(String prefix) throws SAXException { - if (((Boolean) prefixMapLinkedList.removeFirst()).booleanValue()) { - pageInfo.popPrefixMapping(prefix); - } + pageInfo.popPrefixMapping(prefix); } 1.79 +8 -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.78 retrieving revision 1.79 diff -u -r1.78 -r1.79 --- Parser.java 9 Aug 2003 19:18:22 -0000 1.78 +++ Parser.java 11 Aug 2003 21:11:07 -0000 1.79 @@ -451,6 +451,11 @@ String prefix = attrs.getValue("prefix"); if (prefix != null) { if (uri != null) { + String uriPrev = pageInfo.getURI(prefix); + if (uriPrev != null && !uriPrev.equals(uri)) { + err.jspError(reader.mark(), "jsp.error.prefix.refined", + prefix, uri, uriPrev); + } if (pageInfo.getTaglib(uri) == null) { String[] location = ctxt.getTldLocation(uri); pageInfo.addTaglib(uri, 1.127 +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.126 retrieving revision 1.127 diff -u -r1.126 -r1.127 --- messages.properties 22 Jul 2003 21:04:46 -0000 1.126 +++ messages.properties 11 Aug 2003 21:11:07 -0000 1.127 @@ -395,3 +395,4 @@ jsp.error.signature.classnotfound=The class {0} specified in the method signature in TLD for the function {1} cannot be found. {2} jsp.error.text.has_subelement=<jsp:text> must not have any subelements jsp.error.data.file.read=Error reading file \"{0}\" +jsp.error.prefix.refined=Attempt to redefine the prefix {0} to {1}, when it was already defined as {2} in the current scope. 1.42 +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.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- messages_es.properties 21 Jul 2003 21:52:51 -0000 1.41 +++ messages_es.properties 11 Aug 2003 21:11:07 -0000 1.42 @@ -255,3 +255,4 @@ jsp.error.prelude.xml= jsp.error.coda.xml= jsp.error.jsptext.badcontent= +jsp.error.prefix.refined= 1.27 +2 -2 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties Index: messages_fr.properties =================================================================== RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages_fr.properties,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- messages_fr.properties 21 Jul 2003 21:52:51 -0000 1.26 +++ messages_fr.properties 11 Aug 2003 21:11:07 -0000 1.27 @@ -292,4 +292,4 @@ jsp.error.prelude.xml= jsp.error.coda.xml= jsp.error.jsptext.badcontent= - +jsp.error.prefix.refined= 1.43 +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.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- messages_ja.properties 21 Jul 2003 21:52:51 -0000 1.42 +++ messages_ja.properties 11 Aug 2003 21:11:07 -0000 1.43 @@ -347,3 +347,4 @@ jsp.error.variable.alias=name-from-attribute\u304a\u3088\u3073alias\u5c5e\u6027\u306e\u4e21\u65b9\u3092variable\u6307\u793a\u5b50\u4e2d\u306b\u6307\u5b9a\u3059\u308b\u3001\u307e\u305f\u306f\u3069\u3061\u3089\u3082\u6307\u5b9a\u3057\u306a\u3044\u3053\u3068\u304c\u3067\u304d\u307e\u3059 jsp.error.prelude.xml=JSP\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8 {0} \u306f\u305d\u308c\u306b\u95a2\u9023\u3057\u305f\u5c0e\u5165\u90e8 ({1}) \u3092\u6301\u3063\u3066\u3044\u307e\u3059 jsp.error.coda.xml=JSP\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8 {0} \u306f\u305d\u308c\u306b\u95a2\u9023\u3057\u305f\u7d42\u7d50\u90e8 ({1}) \u3092\u6301\u3063\u3066\u3044\u307e\u3059 +jsp.error.prefix.refined=
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]