这样一段代码,(◎1◎) 和(◎2◎)两种方式都用过了,还是报同样的错误。是不是我还要配置什么??
try{
      // (◎1◎) XPath xpath = XPath.newInstance("/protocol-mapping/protocol/code");
    //  // List childNodes = xpath.selectNodes(doc);
//(@2@)     
 List childNodes = XPath.selectNodes(doc.getRootElement(), "/protocol/code");
        System.out.println("test for xpath");
               Iterator itd=childNodes.iterator();
            // String scode=null;
           
               while(itd.hasNext())      {
            Element childNode = (Element)itd.next();            String name = childNode.getAttributeValue("code");
            String text = childNode.getText();
        }
        }
        catch(Exception e){
        e.printStackTrace();
        }
报错信息如下:
ava.lang.NoClassDefFoundError: org/jaxen/NamespaceContext at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:141) at org.jdom.xpath.XPath.newInstance(XPath.java:126) at org.jdom.xpath.XPath.selectNodes(XPath.java:337) at XMLOperator.main(XMLOperator.java:105)Exception in thread "main" 

解决方案 »

  1.   

    有一些包你没有引入。
    jdom本身引用了第三方包,你把jdom下的/lib里头的包再引入就可以了。
      

  2.   

    引入了,还是不行啊。都import了
    import org.jdom.*;
    import org.jdom.Document;
    import org.jdom.input.*;
    import org.jdom.output.*;
    import java.io.*;
    import java.util.Collection;
    import javax.naming.*;
    import java.util.List;
    import java.util.Iterator;
    import java.util.Vector;
    import org.jdom.xpath.*;
    import org.jaxen.*;
    import org.jaxen.jdom.*;
    import了这么多,都不行
      

  3.   

    不是import
    是引入jdom下的/lib里头的.jar,就是在classpath或者jbuilder的工程里头的引用路径,或者eclipse里头的项目属性中的构建路径