1

DOM4J を使用して XML Doc にリンクした JTree があります。選択した場所にノードを追加できるポップアップがあります。

public void addNode() {
        BranchTreeNode node = (BranchTreeNode) getLastSelectedPathComponent();
        if ((node.getXmlNode() instanceof Element)
                && (node.getXmlNode().getName().equals(ROOT))) {
            Element root = (Element) node.getXmlNode();
            Element element = root.addElement(NODE);            
        }
    }

これは、基礎となる XML に対してうまく機能し、保存して完全に読み取ることができます。問題は、ツリーに 1 つのノードしか追加されず、ノードをいくつ追加しても 1 つしか表示されず、その子は 1 つしか表示されないことです。私はもう試した

treeModel.reload(); 
treeModel.reload(node);
treeModel.nodeChanged(node);

そして今、Eclipseでスペルを調べてみると、これは陽気に機能しました

treeModel.setDocument(treeModel.getDocument());

だから私は今私の質問だと思います:これは正しい方法ですか? 何か不足していますか?

4

0 に答える 0