错误信息呢?用的是JDOM的哪个版本?

解决方案 »

  1.   

    9.0
    C:\blink\XPathTest.java:47: cannot resolve symbol
    symbol  : variable e1 
    location: class XPathTest
         if (e1.hasChildren()){System.out.print("dfdfdf");}
                             ^
    1 error
      

  2.   

    我看你的xml是有命名空间的吧!xpdl是命名空间
    不能这样用的:要先匹配到他的命名空间我只在dom4j中用过xpath.一般的做法是先匹配Package xpdl Namespace的父接点
    然后xpath变成"/Package/WorkflowProcesses/WorkflowProcess/Activities/Activity
      

  3.   

    楼上详细写出了
    你所说的每一句
    对我来说都有难度
    msn:[email protected]
    谢谢
      

  4.   

    我没有加这一句
    运行没有问题
    if (e1.hasChildren()){System.out.print("dfdfdf");}

      

  5.   

    e1 没定义,或者定义了,但超出范围了 ------------------------------------------------------
               我们还年轻牛奶会有的奶牛也会有的 
                 可天天在 csdn 混这些会有吗 ??
      

  6.   

    好象一个是EL,一个是Eone
    你用了Eone(本来是EL)
      

  7.   

    Element el = (Element)iterator.next();
    System.out.print("<"+el.getName()+">");
    System.out.println(el.getText());
        //加了这一句为什么会出错
        if (e1.hasChildren()){System.out.print("dfdfdf");}JDOM中Element 是没有hasChildren()方法地,你能够编译通过??
      

  8.   

    编译通过但有提示:Note: C:\blink\XPathTest.java uses or overrides a deprecated API.
    Note: Recompile with -deprecation for details.
    我想判断是否有孩子,有则取孩子值(特定或逐个取出都行)
      

  9.   

    Element.hasChildren()这个方法在当前版本的jdom中已经被废用,是以前版本的方法,你要查一下9.0的doc,看看它被哪个函数取代了。
      

  10.   

    应该是代码针对新版本的JDOM,而你用的老版本的
    才会找不到方法
    一般老版本中的方法如果在新版本中有更好的实现的话
    为了兼容性,也会保留老的方法,只是把它作为deprecated
      

  11.   

    谢谢大家的帮助
    我是做notes的,java方面是零
    经过半个月拼命看资料,加上大家的帮助(特别sirc(一毛) )
    我基本实现读取xml文件信息并存到domino库中
      

  12.   

    Namespace xpdl= Namespace.getNamespace("http://www.wfmc.org/standards/docs/xpdl");
      
    if  (e1.hasChildren()){System.out.print(el.getChild("Description",xpdl).getText());}  
    是由于命名空间的