DOM005 Wrong Document Error during transformation 2003-01-30 - By Prakash Sridharan
Hi All, In my project, I am merging 2 W3C Documents and getting a single W3C Dcoument and then doing transformation on the merged document. Sometimes I am getting javax.xml.transform.TransformerException: org.w3c.dom.DOMException: DOM005 Wrong document The code is shown below. //merging documents public Document merge(String mergeName, Document doc1, Document doc2) { Document document = new org.apache.xerces.dom.DocumentImpl(); Element rootNode = document.createElement(mergeName); rootNode.appendChild(doc1.getDocumentElement()); rootNode.appendChild(doc2.getDocumentElement()); document.appendChild(rootNode); return document; } //transformation transform(Document doc, String fileName) { javax.xml.transform.stream.StreamSource streamSource = new javax.xml.transform.stream.StreamSource(new File(fileName)); javax.xml.transform.Templates templates = TransformerFactory.newInstance().newTemplates(streamSource); templates.newTransformer().transform(new DOMSource(doc), result); } Can anybody help me what could cause this error? Thanks in advance, Prakash
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2716.2200" name=GENERATOR></HEAD> <BODY><FONT size=2><FONT size=2> <DIV><FONT face=Arial>Hi All,</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>In my project, I am merging 2 W3C Documents and getting a single W3C Dcoument and then doing transformation on the merged document. Sometimes I am getting javax.xml.transform.TransformerException: org.w3c.dom.DOMException: DOM005 Wrong document</FONT></DIV> <DIV><FONT face=Arial>The code is shown below.</FONT></DIV> <DIV><FONT face=Arial>//merging documents</FONT></DIV> <DIV><FONT face=Arial>public Document merge(String mergeName, Document doc1, Document doc2)</FONT></DIV> <DIV><FONT face=Arial>{</FONT></DIV> <DIV><FONT face=Arial>Document document = new org.apache.xerces.dom.DocumentImpl();</FONT></DIV> <DIV><FONT face=Arial>Element rootNode = document.createElement(mergeName);</FONT></DIV> <DIV><FONT face=Arial><FONT face="Courier New"></FONT></FONT> </DIV> <DIV><FONT face=Arial>rootNode.appendChild(doc1.getDocumentElement());</FONT></DIV> <DIV><FONT face=Arial>rootNode.appendChild(doc2.getDocumentElement());</FONT></DIV> <DIV><FONT face=Arial><FONT face="Courier New"></FONT></FONT> </DIV> <DIV><FONT face=Arial>document.appendChild(rootNode);</FONT></DIV> <DIV><FONT face=Arial>return document;</FONT></DIV> <DIV><FONT face=Arial>}</FONT></DIV> <DIV><FONT face=Arial><FONT face="Courier New"></FONT></FONT> </DIV> <DIV><FONT face=Arial>//transformation</FONT></DIV> <DIV><FONT face=Arial>transform(Document doc, String fileName)</FONT></DIV> <DIV><FONT face=Arial>{</FONT></DIV> <DIV><FONT face=Arial>javax.xml.transform.stream.StreamSource streamSource = new javax.xml.transform.stream.StreamSource(new File(fileName));</FONT></DIV> <DIV><FONT face=Arial>javax.xml.transform.Templates templates = TransformerFactory.newInstance().newTemplates(streamSource);</FONT></DIV> <DIV><FONT face=Arial>templates.newTransformer().transform(new DOMSource(doc), result);</FONT></DIV> <DIV><FONT face=Arial>}</FONT></DIV> <DIV><FONT face=Arial>Can anybody help me what could cause this error?</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>Thanks in advance,</FONT></DIV> <DIV><FONT face=Arial>Prakash</FONT></DIV></FONT></FONT></BODY></HTML>
|
|