CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
【经验总结】不能实施并行处理的情况 浅谈并行编程中的任务分解模式
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web Services / XML

关于dom4j与Xpath的烦恼问题。。。。。。。。。。。。。。。。。。。。。。。。。。。

楼主eyeseaJason(稻草人)2005-07-18 15:05:57 在 Java / Web Services / XML 提问

原来以为dom4j很简单,但是一用问题多多  
  我不知道dom4j自身对XPath支持的怎么样,我看见网上说要配合JAXEN  
  我就用了  
  我的环境是eclipse,dom4j-1.6.1.jar和jaxen-1.1-beta-7.jar都在  
  classpath上,xml文档zzz.xml:  
  <project   dir="F:/pp"     xmlns="http://www.mysoft.com/schema">  
      <applications   dir="/pp/Applications">  
          <application   dir="/pp/Applications/app1"/>  
          <application   dir="/pp/Applications/app2"/>  
      </applications>  
      <views   dir="/pp/Views"/>  
  </project>  
  程序如下:  
  try{  
  SAXReader   reader   =   new   SAXReader();  
  Document   doc   =   reader.read(new   File(zzz.xml));  
  Element   root   =   doc.getRootElement();  
  //这个有值  
  Element   e   =   (Element)root.elementIterator("applications").next();  
  //但这个列表居然为空,换做"/project/applications"也为空  
  //但"/project"不为空,显示5个元素  
  List   node   =   doc.selectNodes("//applications");  
   
  }catch(Exception   e){  
  System.out.println(e.getMessage());  
  }  
  这样最简单的查询怎么有错呢,是不是我引用的dom4j包和jaxen包不匹配  
  还是我程序写错了,谢谢指教!  
       
   
  问题点数:20、回复次数:6Top

1 楼masse(当午 http://blog.sina.com.cn/xukf)回复于 2005-07-21 13:26:02 得分 0

SAXReader   saxReader   =   new   SAXReader();    
                        Document   document   =   saxReader.read(new   File(filename));  
                        List   list   =   document.selectNodes("/project/applications"   );    
                        Iterator   iter   =   list.iterator();  
  Top

2 楼eyeseaJason(稻草人)回复于 2005-07-25 16:13:06 得分 0

masse的代码和我的没什么区别啊,/project/applications我查的结果为空,而//applications  
  应该是对整个文档所有的applications查询,我运行的结果也是空。  
  到底怎么回事啊,郁闷Top

3 楼mxlmwl(飞星)回复于 2005-07-29 15:56:15 得分 10

程序没错,就是这么写的。  
  偶用的是dom4j1.6,jaxen1.1-beta4  
  是不是你的xml文件有问题?  
  <?xml   version="1.0"   encoding="UTF-8"?>Top

4 楼bluelily22(丁丁)回复于 2005-07-29 16:48:41 得分 0

从网上下的dom4j1.6不包含xpath解析器,你需要重新用一个dom4j-full.jar,这个你可以去网上下的Top

5 楼cxz7531(大花猫)回复于 2005-11-23 09:17:35 得分 10

这个问题,我也碰到了。只要把默认的命名空间xmlns="http://www.mysoft.com/schema"删除就行了,不知道什么原因?这个应该是domj的bugTop

6 楼lilygt(活的坦然)回复于 2005-11-23 13:27:36 得分 0

学习Top

相关问题

  • 关于DOM和XPath的关系
  • 烦恼
  • 恼烦恼烦恼烦恼烦恼烦恼烦恼
  • COM的烦恼!
  • Vcl的烦恼!!!!
  • Rose2002的烦恼。
  • ''的烦恼~~~~~~~~~
  • 就业烦恼
  • 菜鸟的烦恼
  • 编程的烦恼

关键词

  • document
  • xml
  • dom4j
  • saxreader
  • jaxen
  • xpath
  • 问题
  • 程序
  • 为空
  • project

得分解答快速导航

  • 帖主:eyeseaJason
  • mxlmwl
  • cxz7531

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
CSDN网站24小时值班电话:13552009689
Copyright © 2000-2009, CSDN.NET, All Rights Reserved
GongshangLogo