Author: markt
Date: Fri Dec 20 22:13:33 2013
New Revision: 1552826

URL: http://svn.apache.org/r1552826
Log:
Correct a regression in the XML refactoring that meant that errors in TLD files 
were swallowed.

Modified:
    tomcat/tc7.0.x/trunk/java/org/apache/jasper/xmlparser/ParserUtils.java
    tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc7.0.x/trunk/java/org/apache/jasper/xmlparser/ParserUtils.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/jasper/xmlparser/ParserUtils.java?rev=1552826&r1=1552825&r2=1552826&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/jasper/xmlparser/ParserUtils.java 
(original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/jasper/xmlparser/ParserUtils.java Fri 
Dec 20 22:13:33 2013
@@ -36,7 +36,6 @@ import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import org.w3c.dom.Text;
 import org.xml.sax.EntityResolver;
-import org.xml.sax.ErrorHandler;
 import org.xml.sax.InputSource;
 import org.xml.sax.SAXException;
 import org.xml.sax.SAXParseException;
@@ -53,11 +52,6 @@ import org.xml.sax.SAXParseException;
 public class ParserUtils {
 
     /**
-     * An error handler for use when parsing XML documents.
-     */
-    static ErrorHandler errorHandler = new XmlErrorHandler();
-
-    /**
      * An entity resolver for use when parsing XML documents.
      */
     static EntityResolver entityResolver;
@@ -106,8 +100,13 @@ public class ParserUtils {
             factory.setValidating(validating);
             DocumentBuilder builder = factory.newDocumentBuilder();
             builder.setEntityResolver(entityResolverInstance);
-            builder.setErrorHandler(errorHandler);
+            XmlErrorHandler handler = new XmlErrorHandler();
+            builder.setErrorHandler(handler);
             document = builder.parse(is);
+            if (!handler.getErrors().isEmpty()) {
+                // throw the first to indicate there was a error during 
processing
+                throw handler.getErrors().iterator().next();
+            }
         } catch (ParserConfigurationException ex) {
             throw new JasperException
                 (Localizer.getMessage("jsp.error.parse.xml", location), ex);

Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1552826&r1=1552825&r2=1552826&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Fri Dec 20 22:13:33 2013
@@ -64,6 +64,14 @@
     </fix>
     </changelog>
   </subsection>
+  <subsection name="Jasper">
+    <changelog>
+      <fix>
+        Correct a regression in the XML refactoring that meant that errors in
+        TLD files were swallowed. (markt)
+      </fix>
+    </changelog>
+  </subsection>
 </section>
 <section name="Tomcat 7.0.50 (violetagg)">
   <subsection name="Catalina">



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to