以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 DOM/SAX/XPath 』  (http://bbs.xml.org.cn/list.asp?boardid=11)
----  用jdom给xml文档添加一个三级节点  (http://bbs.xml.org.cn/dispbbs.asp?boardid=11&rootid=&id=24332)


--  作者:jomper
--  发布时间:11/17/2005 12:55:00 AM

--  用jdom给xml文档添加一个三级节点
1.XML文档片段:
<root>
    <二级节点>
        <三级节点></三级节点>
    </二级节点>
</root>

2.给该XML文档添加一个二级节点 这个我可以做到
步骤:
(1) 建立 doc 并读入xml文档
(2) doc.getRootElement();// 将所有的节点读入内存
(3) list = root.getChildren();// 将所有的节点读入链表
(4) list.add(element);新建二级节点并写入链表
(5) 把 doc 写入xml文档

3.现在我希望能给该XML文档添加一个三级节点
步骤:
(1) 建立 doc 并读入xml文档
(2) doc.getRootElement();// 将所有的节点读入内存
(3) list = root.getChildren("二级节点");// 将所有的节点读入链表(区别)
(4) list.add(element);新建三级节点并写入链表
(5) 把 doc 写入xml文档

抛出异常:Filter won't allow the org.jdom.Element '[Element: <三级节点/>]' to be added to the list

请问应该怎么做?


[此贴子已经被作者于2005-11-17 11:52:38编辑过]

--  作者:jomper
--  发布时间:11/17/2005 11:54:00 AM

--  
后来我用
list = XPath.selectNodes(root, "/root/二级节点");
没有异常,但是什么也发生.
--  作者:jomper
--  发布时间:11/17/2005 3:06:00 PM

--  
爽 解决了,看来问个问题就算没有人回答.也可以帮自己理下思路.然后就自己解决了.
--  作者:gudai
--  发布时间:1/8/2006 2:58:00 PM

--  
靠,解决了也没见你说说经验。难怪别人不理你。
--  作者:jomper
--  发布时间:3/14/2006 8:11:00 AM

--  
错在第3步,不该把上下文直接给list,而因该放到一个element.
最后把构建好的新上下文(需要添加到树的),add到element下.
--  作者:zclsingle
--  发布时间:3/17/2006 9:59:00 AM

--  
常见错误,谢谢楼主,收下啦,3q
--  作者:pewkee
--  发布时间:3/17/2006 10:37:00 AM

--  
学习啊。

W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms