craigmcc 02/04/27 16:39:50
Modified: digester/src/java/org/apache/commons/digester Digester.java
Log:
Fix two issues with the parse(File) method:
* Create an InputSource using an InputStream rather than a Reader,
so that any character encoding specified within the file can be
respected correctly.
* When creating the InputSource, set a System ID on it so that relative
entity references in the XML document can be resolved correctly.
PR: Bugzilla #8461
Submitted by: Attila Szegedi <[EMAIL PROTECTED]
Thanks for the patch!
Revision Changes Path
1.52 +8 -5
jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java
Index: Digester.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -r1.51 -r1.52
--- Digester.java 18 Apr 2002 21:23:44 -0000 1.51
+++ Digester.java 27 Apr 2002 23:39:50 -0000 1.52
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java,v
1.51 2002/04/18 21:23:44 rdonkin Exp $
- * $Revision: 1.51 $
- * $Date: 2002/04/18 21:23:44 $
+ * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java,v
1.52 2002/04/27 23:39:50 craigmcc Exp $
+ * $Revision: 1.52 $
+ * $Date: 2002/04/27 23:39:50 $
*
* ====================================================================
*
@@ -64,6 +64,7 @@
import java.io.File;
+import java.io.FileInputStream;
import java.io.FileReader;
import java.io.InputStream;
import java.io.IOException;
@@ -112,7 +113,7 @@
*
* @author Craig McClanahan
* @author Scott Sanders
- * @version $Revision: 1.51 $ $Date: 2002/04/18 21:23:44 $
+ * @version $Revision: 1.52 $ $Date: 2002/04/27 23:39:50 $
*/
public class Digester extends DefaultHandler {
@@ -1260,7 +1261,9 @@
public Object parse(File file) throws IOException, SAXException {
configure();
- getXMLReader().parse(new InputSource(new FileReader(file)));
+ InputSource input = new InputSource(new FileInputStream(file));
+ input.setSystemId("file://" + file.getAbsolutePath());
+ getXMLReader().parse(input);
return (root);
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>