You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by si...@apache.org on 2011/06/27 11:56:43 UTC
svn commit: r1140083 -
/commons/proper/digester/trunk/src/main/java/org/apache/commons/digester3/Digester.java
Author: simonetripodi
Date: Mon Jun 27 09:56:42 2011
New Revision: 1140083
URL: http://svn.apache.org/viewvc?rev=1140083&view=rev
Log:
DIGESTER-85 Include filename or uri if Digester.parse(File file or String uri throws a SAXException
thre's no need to decorate the thrown exception, filename or uri have been logged at error level: since the request is focused on monitoring errors from 3rd-parties Digester use, logging which resource caused the error is more than enough
Modified:
commons/proper/digester/trunk/src/main/java/org/apache/commons/digester3/Digester.java
Modified: commons/proper/digester/trunk/src/main/java/org/apache/commons/digester3/Digester.java
URL: http://svn.apache.org/viewvc/commons/proper/digester/trunk/src/main/java/org/apache/commons/digester3/Digester.java?rev=1140083&r1=1140082&r2=1140083&view=diff
==============================================================================
--- commons/proper/digester/trunk/src/main/java/org/apache/commons/digester3/Digester.java (original)
+++ commons/proper/digester/trunk/src/main/java/org/apache/commons/digester3/Digester.java Mon Jun 27 09:56:42 2011
@@ -19,6 +19,8 @@ package org.apache.commons.digester3;
* under the License.
*/
+import static java.lang.String.format;
+
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
@@ -1574,7 +1576,29 @@ public class Digester
}
configure();
- getXMLReader().parse( input );
+
+ String systemId = input.getSystemId();
+ if ( systemId == null )
+ {
+ systemId = "(already loaded from stream)";
+ }
+
+ try
+ {
+ getXMLReader().parse( input );
+ }
+ catch ( IOException e )
+ {
+ log.error( format( "An error occurred while reading stream from '%s', see nested exceptions", systemId ),
+ e );
+ throw e;
+ }
+ catch ( SAXException e )
+ {
+ log.error( format( "An error occurred while parsing XML from '%s', see nested exceptions", systemId ),
+ e );
+ throw e;
+ }
cleanup();
return this.<T> getRoot();
}