CALL FOR: HACK, extending XMLNodeReader of XMLBasicReader (ends Tue 1/4 18:00)
Called by: Eduard Witteveen Total tally on this call : +6
YEA (6) : Kees Jongenburger, Gerard van Enk, Pierre van Rooden, Rob Vermeulen, Rob van Maris, Michiel Meeuwissen
ABSTAIN (0) :
NAY (0) :
VETO (0) :
No votes, assumed abstained (9): Jaco de Groot, Marcel Maatkamp, David van Zeventer,
Johannes Verelst, Daniel Ockeloen, Rico Jansen,
Wilbert Hengst, Nico Klasens, Mark Huijser
Call result:
Changes can be made.
Not using XMLBasicReader for an xml reader is now concidered a bug (so subsequent cahnged do not need a vote).
Eduard Witteveen wrote:
CALL FOR: HACK, extending XMLNodeReader of XMLBasicReader
Description:
============
XMLNodeReader still uses: "http://apache.org/xml/features/dom/defer-node-expansion". This is a specific xml-parser, and thus very generic. XMLNodeReader could easy extend XMLBasicReader and this way the problem should be solved.
Reason:
=======
I got an error message on this, when i installed an application with java 1.4
Version: ======== Current CVS version
Modified files: =============== org.mmbase.util.XMLNodeReader
Diff:
=====
Index: org/mmbase/util/XMLNodeReader.java
===================================================================
RCS file: /usr/local/cvs/src/org/mmbase/util/XMLNodeReader.java,v
retrieving revision 1.20
diff -r1.20 XMLNodeReader.java
19d18
< import org.apache.xerces.parsers.DOMParser;
35,41c34,35
< public class XMLNodeReader {
<
< private static Logger log =
< Logging.getLoggerInstance(XMLNodeReader.class.getName());
<
< Document document;
< DOMParser parser;
---
> public class XMLNodeReader extends XMLBasicReader {
> private static Logger log = Logging.getLoggerInstance(XMLNodeReader.class.getName());
50,80c44,46
<
< public XMLNodeReader(
< String filename,
< String applicationpath,
< MMBase mmbase) {
< try {
< parser = new DOMParser();
< // are the lines below generic?
< parser.setFeature(
< "http://apache.org/xml/features/dom/defer-node-expansion",
< true);
< parser.setFeature(
< "http://apache.org/xml/features/continue-after-fatal-error",
< true);
< EntityResolver resolver = new XMLEntityResolver();
< parser.setEntityResolver(resolver);
< filename = "file:///" + filename;
< parser.parse(filename);
< document = parser.getDocument();
< this.applicationpath = applicationpath;
< /*
< System.out.println("*** START XML APPLICATION READER FOR : "+filename);
< System.out.println("ExportSource="+getExportSource());
< System.out.println("TimeStamp="+getTimeStamp());
< System.out.println("*** END XML APPLICATION READER FOR : "+filename);
< */
< }
< catch (Exception e) {
< // argh.. no distinction between different type of error messages?
< log.error(Logging.stackTrace(e));
< }
---
> public XMLNodeReader(String filename, String applicationpath, MMBase mmbase) {
> super(filename);
> this.applicationpath = applicationpath;
START OF CALL: 2003-03-27
END OF CALL: 2003-04-1
-- Pierre van Rooden Mediapark, C 107 tel. +31 (0)35 6772815 "Never summon anything bigger than your head."
