dirkv       01/08/25 07:17:56

  Modified:    src/util/org/apache/util DOMUtils.java
  Log:
  test if you get a namespace aware parser from JAXP
  
  Revision  Changes    Path
  1.3       +27 -4     jakarta-slide/src/util/org/apache/util/DOMUtils.java
  
  Index: DOMUtils.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/util/org/apache/util/DOMUtils.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DOMUtils.java     2001/05/15 16:53:40     1.2
  +++ DOMUtils.java     2001/08/25 14:17:56     1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/util/org/apache/util/DOMUtils.java,v 1.2 
2001/05/15 16:53:40 jericho Exp $
  - * $Revision: 1.2 $
  - * $Date: 2001/05/15 16:53:40 $
  + * $Header: /home/cvs/jakarta-slide/src/util/org/apache/util/DOMUtils.java,v 1.3 
2001/08/25 14:17:56 dirkv Exp $
  + * $Revision: 1.3 $
  + * $Date: 2001/08/25 14:17:56 $
    *
    * ====================================================================
    *
  @@ -67,12 +67,18 @@
   import java.lang.reflect.Method;
   
   import java.io.InputStream;
  +import java.io.StringReader;
   import java.io.IOException;
   
   import java.util.Enumeration;
   import java.util.StringTokenizer;
   import java.util.Vector;
   
  +import javax.xml.parsers.DocumentBuilderFactory;
  +import javax.xml.parsers.DocumentBuilder;
  +import javax.xml.parsers.ParserConfigurationException;
  +
  +import org.xml.sax.InputSource;
   import org.w3c.dom.Attr;
   import org.w3c.dom.Document;
   import org.w3c.dom.Element;
  @@ -89,13 +95,30 @@
    *
    * @author <a href="mailto:[EMAIL PROTECTED]>B.C. Holmes</a>
    * @author <a href="mailto:[EMAIL PROTECTED]>Park, Sung-Gu</a>
  - * @version $Revision: 1.2 $
  + * @author Dirk Verbeeck
  + * @version $Revision: 1.3 $
    */
   public class DOMUtils {
   
       protected static Class[] getElementsByNSParameterTypes =
           { String.class, String.class };
   
  +
  +     public static boolean isDocumentBuilderDOM2Compliant() {
  +             try {
  +             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  +             factory.setNamespaceAware(true);
  +
  +             DocumentBuilder builder = factory.newDocumentBuilder();
  +                     String data="<?xml version=\"1.0\" encoding=\"utf-8\" 
?><D:propfind xmlns:D=\"DAV:\"><D:prop><D:displayname/></D:prop></D:propfind>";
  +             Document document = builder.parse(new InputSource(new 
StringReader(data)));
  +                     Element root = document.getDocumentElement();
  +                     return isDOM2Compliant(root);
  +             }
  +             catch (Throwable ex) {
  +             }
  +             return false;
  +     }
   
       /**
        * This method checks a DOM node to see if the implementation
  
  
  

Reply via email to