----- Original Message -----
From: Franz Beil
Sent: Tuesday, March 26, 2002 12:19 PM
Subject: Re: [dom4j-user] configuring the SAXParser

More specifically, the bug/problem is as follows:
 
SAXReader reader = new SAXReader();
reader.getXMLReader().setContentHandler(new MyContentHandler);
Class beforeReadHandler = reader.getXMLReader().getContentHandler();
reader.read(file);
Class afterReadHandler = reader.getXMLReader().getContentHandler();
 
!!!   afterReadHandler != beforeReadHandler   !!!
 
reader.read(file) resets the ContentHandler to some default handler. In my case, this is
afterReadHandler.getClass() == org.dom4j.io.SAXContentHandler.
 
Does anyone know how to prevent reader.read() from doing this?
The read() method will always install its own ContentHandler. If you want to use a different ContentHandler then probably the easiest way is to derive from SAXReader and override the following method
 
    /** Factory Method to allow user derived SAXContentHandler objects to be used
      */
    protected SAXContentHandler createContentHandler(XMLReader reader) {
        return new MySAXContentHandler();
    }
 
James

 
 

Reply via email to