[jdom-interest] DOMBuilder validation

Elliotte Rusty Harold elharo at metalab.unc.edu
Wed Jun 14 08:21:58 PDT 2000


At 10:30 PM -0700 6/13/00, Jason Hunter wrote:

>The code looks like it should be validating, and someone else posted
>that they saw validation occurring.  Are you sure you're not seeing
>validation?  Are you using the default-provided Xerces?
>

I've tried this with multiple builds of Xerces. All give me the same 
result. Maybe the flaw is in my understanding of how validity errors 
are reported. With SAXBuilder a validity error throws an exception at 
build time. Does this not happen with DOMBuilder? If so, how is one 
supposed to note the validity errors?

Here's the code I'm working with. The SAXBuilder equivalent works just fine.

import org.jdom.*;
import org.jdom.input.DOMBuilder;
import org.apache.xerces.parsers.*;


public class DOMValidator {

   public static void main(String[] args) {
 
     if (args.length == 0) {
       System.out.println("Usage: java DOMValidator URL1 URL2...");
     }
 
     DOMBuilder builder = new DOMBuilder(true);
                              /*         ^^^^       */
                              /* Turn on validation */
     // start parsing...
     DOMParser parser = new DOMParser();  // Xerces specific class
     for (int i = 0; i < args.length; i++) {
 
       try {
         // Read the entire document into memory
         parser.parse(args[i]);
 
         org.w3c.dom.Document domDoc  = parser.getDocument();
         org.jdom.Document    jdomDoc = builder.build(domDoc);

         // If there are no validity errors,
         // then no exception is thrown
         System.out.println(args[i] + " is valid.");
       }
       catch (Exception e) { // indicates a well-formedness or validity error
         System.out.println(args[i] + " is not valid.");
         System.out.println(e.getMessage());
       }
 
     }
 
   }

}

+-----------------------+------------------------+-------------------+
| Elliotte Rusty Harold | elharo at metalab.unc.edu | Writer/Programmer |
+-----------------------+------------------------+-------------------+
|                  The XML Bible (IDG Books, 1999)                   |
|              http://metalab.unc.edu/xml/books/bible/               |
|   http://www.amazon.com/exec/obidos/ISBN=0764532367/cafeaulaitA/   |
+----------------------------------+---------------------------------+
|  Read Cafe au Lait for Java News:  http://metalab.unc.edu/javafaq/ |
|  Read Cafe con Leche for XML News: http://metalab.unc.edu/xml/     |
+----------------------------------+---------------------------------+



More information about the jdom-interest mailing list