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]>

Reply via email to