[
Lists Home |
Date Index |
Thread Index
]
> I'm not sure I see your problem. The parse() method either returns or
> throws an exception. If it returns normally, the end of document was
> seen. If it throws an exception it wasn't.
Perhaps Karl is referring to what I see as a far more common approach--
which is to simply filter a specific handler (i.e., create a passthrough
ContentHandler that acts on or modifies ContentHandler information as it is
passed through).
mySpecialFilterContentHandler.setContentHandler(reader.getContentHandler());
reader.setContentHandler(mySpecialFilterContentHandler);
Then events pass from the reader to the special filter-- it then passes on
the content handling events to the original content handler. I recognize
that this isn't outlined in the SAX spec, but I see it as pretty common. GNU
Jaxp was built on this approach with it's pipeline packages (including
TeeConsumer which allows you to split the event chain into two directions).
As Karl points out, error handling and producing in this model is
cumbersome-- it was probably the chief creation of complexity in the model.
Just a guess...
Jeff Rafter
|