codice:
String uri="file:///C:/wstelco/eci.owl";
String uriOntology="file:///C:/wstelco/Micie.owl";
try{
// lettura
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(uri);
Element root = document.getDocumentElement();
NodeList elementi = root.getChildNodes();
Element element=null;
for (int i = 0; i < elementi.getLength(); i++) {
Node node = elementi.item(i);
// Checks if the child node of <ELEMENT> is a <ELEMENT>.
if (node.getNodeType() == Node.ELEMENT_NODE &&node.getNodeName().equals("ELEMENT")){
element = (Element) node;
break;
}
}
//scrittura
DocumentBuilderFactory factory1 = DocumentBuilderFactory.newInstance();
DocumentBuilder builder1 = factory1.newDocumentBuilder();
Document document1 = builder1.parse(uriOntology);
Element root1 = document1.getDocumentElement();
System.out.println(root1.toString());
root1.appendChild(element);
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
Source source = new DOMSource(document1);
Result result = new StreamResult("def1.xml");
transformer.transform(source, result);
}
mi dà il seguente errore
WRONG_DOCUMENT_ERR: A node is used in a different document than the one that created it.
sicuro è nell'append! perchè devo cancellarlo l'elemento?