[jdom-interest] IOExceptions in createDocument() in adapter classes

Elliotte Rusty Harold elharo at metalab.unc.edu
Fri Apr 5 10:26:49 PST 2002


The AbstractDOMAdapter class and the DOMAdapter interface decalre 
createDocument() methods that are decalred to throw a generic Exception:

public org.w3c.dom.Document *createDocument*() throws java.lang.Exception


Wouldn't a JDOMException be more appropriate here?

In the various subclasses many of these methods throw IOException. For 
example, in  CrimsonDOMAdapter:

public org.w3c.dom.Document *createDocument*() throws java.io.IOException

This really makes no sense. Looking at the code the problems it's 
reporting are not an I/O problem of any kind. Typically the problem 
would be a ClassNotFoundException:

    public Document createDocument() throws IOException {
        try {
            return
                (Document)Class.forName(
                    "org.apache.crimson.tree.XmlDocument")
                    .newInstance();

        } catch (Exception e) {
            throw new IOException(e.getClass().getName() + ": " +
                                  e.getMessage());
        }
    }

JDOM is converting this to an IOException. I suspect JDOM should either 
let the original exception percolate up or convert it to a 
JDOMException. An IOException here just makes no sense. The other 
adapter classes I've looked at have the same problem.

-- 
+-----------------------+------------------------+-------------------+
| Elliotte Rusty Harold | elharo at metalab.unc.edu | Writer/Programmer |
+-----------------------+------------------------+-------------------+ 
|           The XML Bible, 2nd Edition (IDG Books, 2001)             |
|             http://www.cafeconleche.org/books/bible2/              |
|   http://www.amazon.com/exec/obidos/ISBN=0764547607/cafeaulaitA/   |
+----------------------------------+---------------------------------+
|  Read Cafe au Lait for Java News:   http://www.cafeaulait.org/     | 
|  Read Cafe con Leche for XML News:  http://www.cafeconleche.org/   |
+----------------------------------+---------------------------------+






More information about the jdom-interest mailing list