[java] org.w3c.dom

kill-still

тип переменной tmp - org.w3c.dom.Element
реализация от org.apache.xerces.dom.ElementImpl
org.w3c.dom.Element data = tmp.getOwnerDocument.createElement("bla-bla-bla");
org.w3c.dom.Node node = tmp.cloneNode(true);
data.appendChild(node);

приведённый код бросает эксепшн.
org.w3c.dom.DOMException: WRONG_DOCUMENT_ERR: A node is used in a different document than the one that created it.
at org.apache.xerces.dom.ParentNode.internalInsertBefore(Unknown Source)
at org.apache.xerces.dom.ParentNode.insertBefore(Unknown Source)
at org.apache.xerces.dom.NodeImpl.appendChild(Unknown Source)

справшивается, какого херачто ему не нравится?

Dasar

там же написано, что node из одного документа ты вставляешь в другой документ.
если по аналогии с .net-ом, то у документа должно быть что-то типа importnode, который и надо использовать вместо clonenode

okis

Пробовал importNode делать?
На твой вопрос не знаю ответ.

okis

там же написано, что node из одного документа ты вставляешь в другой документ.
Проблема в том, что в куске кода выше нода создаётся как бы в том же документе. А для того, чтобы убедиться, что это не так уже нужно какие-то особенности явы знать, наверное.

kill-still

ты приглядись - оба элемента из одного документа созданы.

Dasar

Проблема в том, что в куске кода выше нода создаётся как бы в том же документе.
там получается что node data подвешен в воздухе и никуда не добавлен, может в этом дело

kill-still

ну так и должно быть:
http://download.oracle.com/javase/1

Dasar

ну так и должно быть:
я про узел "куда" добавляешь, а не про узел "что" добавляешь.
Оставить комментарий
Имя или ник:
Комментарий: