ベース文書から新しい文書にノードをインポートしようとしていますが、Document.importNode()メソッドを使用すると、例外が生成されます。面白いことに、この例外にはメッセージが含まれていないので、スタックトレース以外はかなり盲目です。 (私はJavaに新しいです)
新しい文書を作成してノードをインポートする方法は次のとおりです。
- this.Builder = DocumentBuilder
- this.Element = Node
コード:
public XMLSelection extract ()
{
if (this.Element != null)
{
try
{
Document newDoc = this.Builder.newDocument();
Node node = newDoc.importNode(this.Element, true);
newDoc.appendChild(node);
return new XMLSelection(newDoc);
}
catch(Exception e)
{
Debug.error("XMLSelection::extract", e);
}
}
return null;
}
そしてスタックトレース:
02-06 14:27:53.328: W/System.err(9082): org.w3c.dom.DOMException
02-06 14:27:53.328: W/System.err(9082): at org.apache.harmony.xml.dom.NodeImpl.setNameNS(NodeImpl.java:227)
02-06 14:27:53.328: W/System.err(9082): at org.apache.harmony.xml.dom.ElementImpl.(ElementImpl.java:50)
02-06 14:27:53.328: W/System.err(9082): at org.apache.harmony.xml.dom.DocumentImpl.createElementNS(DocumentImpl.java:336)
02-06 14:27:53.328: W/System.err(9082): at org.apache.harmony.xml.dom.DocumentImpl.shallowCopy(DocumentImpl.java:156)
02-06 14:27:53.328: W/System.err(9082): at org.apache.harmony.xml.dom.DocumentImpl.cloneOrImportNode(DocumentImpl.java:208)
02-06 14:27:53.328: W/System.err(9082): at org.apache.harmony.xml.dom.DocumentImpl.importNode(DocumentImpl.java:222)
02-06 14:27:53.328: W/System.err(9082): at com.xxxx.xxxx.XMLSelection.extract(XMLSelection.java:57)