Maybe I should have sent this email to the dev list. Sorry for sending it to both lists. Thanks - Niranjan
-----Original Message----- From: Niranjan Kundapur Sent: Thursday, April 11, 2002 3:41 PM To: '[EMAIL PROTECTED]' Subject: ClassCastException: org.apache.xerces.dom.DeferredAttrNSImpl on NodeList.getLength() Hello, I am trying to parse the XHTML1.1 document (from http://www.w3.org/TR/xhtml11)) included below and I get a "ClassCastException: org.apache.xerces.dom.DeferredAttrNSImpl" when I try to do a NodeList.getLength() on the returned doc. I observed it while running other methods also; Node.getName if I remember correctly. I am using Xerces2.0.0. I get the same exception with 2.0.1 also (different line numbers, though). I have set validation and namespaces to true. The code outline is included below. I will appreciate any advice on resolving this. Thank you, Niranjan EXCEPTION ========= java.lang.ClassCastException: org.apache.xerces.dom.DeferredAttrNSImpl at org.apache.xerces.dom.DeferredDocumentImpl.synchronizeChildren(DeferredDocum entImpl.java:1590) at org.apache.xerces.dom.DeferredEntityImpl.synchronizeChildren(DeferredEntityI mpl.java:179) at org.apache.xerces.dom.ParentNode.setReadOnly(ParentNode.java:928) at org.apache.xerces.dom.NamedNodeMapImpl.setReadOnly(NamedNodeMapImpl.java:395 ) at org.apache.xerces.dom.DocumentTypeImpl.setReadOnly(DocumentTypeImpl.java:347 ) at org.apache.xerces.dom.DeferredDocumentTypeImpl.synchronizeChildren(DeferredD ocumentTypeImpl.java:219) at org.apache.xerces.dom.ParentNode.hasChildNodes(ParentNode.java:232) at org.apache.xerces.dom.DeepNodeListImpl.nextMatchingElementAfter(DeepNodeList Impl.java:207) at org.apache.xerces.dom.DeepNodeListImpl.item(DeepNodeListImpl.java:182) at org.apache.xerces.dom.DeepNodeListImpl.getLength(DeepNodeListImpl.java:153) at XMLTest.main(XMLTest.java:73) CODE ====== private DocumentBuilderFactory m_dbf = DocumentBuilderFactory.newInstance(); private DocumentBuilder m_db = null; . . m_dbf.setValidating(true); m_dbf.setNamespaceAware(true); . . m_db = m_dbf.newDocumentBuilder(); . . doc = m_db.parse(theSource); NodeList nl = doc.getElementsByTagNameNS("http://www.w3.org/1999/xhtml", "html"); System.out.println("nl.getLength: "+nl.getLength()); XHTML1.1 file (from http://www.w3.org/TR/xhtml11) ================================================= <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" > <head> <title>Virtual Library</title> </head> <body> <p>Moved to <a href="http://vlib.org/">vlib.org</a>.</p> </body> </html> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
