문제

몇몇 API 는 나 XmlCursor 에서 가리키는 루트는 XML 문서입니다.나를 삽입해야 이 모든 것으로 또 다른 org.w3c.DOM 표현되는 문서입니다.

에서 시작:XmlCursor poiting 에

<a> <b> some text </b> </a>

DOM Document:

<foo>

</foo>

끝에서 내가 가지고 싶은 원래 돔 문서 변경 이

<foo>

  <someOtherInsertedElement>

    <a> <b> 어떤 텍스트 </b> </a>

  </someOtherInsertedElement>

</foo>

참고: document.importNode(cursor.getDomNode()) 작동하지 않는 예외가 발생합니다: NOT_SUPPORTED_ERR:구현을 지원하지 않는 요청된 유형의 객체 또는 작업입니다.

도움이 되었습니까?

해결책

Try something like this:

Node originalNode = cursor.getDomNode();
Node importNode = document.importNode(originalNode.getFirstChild());
Node otherNode = document.createElement("someOtherInsertedElement");
otherNode.appendChild(importNode);
document.appendChild(otherNode);

그래서 다른 말로:

  1. 을 얻을 DOM 노드에서 커서입니다.이 경우에,그것은 DOMDocument,그렇게 getFirstChild()루트를 얻 노드입니다.
  2. 으로 가져올 DOMDocument.
  3. 다른 물건과 DOMDocument.
  4. 추가 수입된 노드를 바른 노드입니다.

는 이유를 가져오는 노드에"항상 그리고"주어진 DOMDocument.다만 추가하면 원래 노드인 예외가 있습니다.

다른 팁

가의 문제입니다.

이 실패했:

Node importNode = document.importNode(originalNode);

이제:

Node importNode = document.importNode(originalNode.getFirstChild());

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top