2011-11-17 2 views
0

cloneNode() 메서드는 버그가있는 것 같습니다. 이 메서드를 호출하면 코드 "NAMESPACE_ERR"에 대한 DOMException이 발생합니다.안드로이드 xml cloneNode

DocumentBuilder builder= DocumentBuilderFactory.newInstance().newDocumentBuilder(); 
Document doc = builder.newDocument(); 
Node n1 = doc.createElement("node"); 
Node n2 = n1.cloneNode(true); 

어떤 생각 : 여기

내 코드? 미리 감사드립니다.

편집 : 중요 사항 :이 코드는 Java JRE를 사용하여 컴퓨터에서 실행하면 완벽하게 작동합니다. Android (1.6 및 2.2)에서만 실패합니다.

EDIT2 : Andrid 3.1에서 작동합니다. 하지만 2.2 버전을 사용해야합니다. 해결 방법이 있습니까?


좋아, 관련 버그를 발견 http://code.google.com/p/android/issues/detail?id=2735

을하지만 지금은 ... 어떤 생각을 해결을해야합니까? NB : 생성 된 노드에 네임 스페이스를 추가하고 싶지 않습니다.

답변

0

이 코드를 시도하고 정상적으로 작동하는 것 같습니다. 나는 로그

11-17 16:51:54.942: I/(15474): [email protected] 
11-17 16:51:54.942: I/(15474): [email protected] 


코드 안드로이드와

button1.setOnClickListener(new OnClickListener(){ 

@Override 
public void onClick(View v) { 
    javax.xml.parsers.DocumentBuilder builder = null; 
    try { 
     builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); 
    } catch (ParserConfigurationException e) { 
     Log.e("","exception,e"); 
    } 
    Document doc = ((javax.xml.parsers.DocumentBuilder) builder).newDocument(); 
    Node n1 = doc.createElement("node"); 
    Node n2 = n1.cloneNode(true); 
     Log.i("",n1.toString()); 
     Log.i("",n2.toString()); 

} 
}); 
+0

에 다음과 같은있어? 이 코드는 Java JRE에서 완벽하게 작동합니다. – user954469