//传过来的xml
Document document = DocumentHelper.parseText(orderxml);
Element rootElement = document.getRootElement();
String returncode = ((Element)rootElement.selectSingleNode("//returnCode")).getTextTrim();//取xml下的第一个节点为returnCode的值
//循环
books = DocumentHelper.parseText(datas).getRootElement();
Element book = null;
Element title = null;
List list = books .elements("book");
for (int i = 0; i < list.size(); i++) {
book = (Element) list.get(i);
List listfile = book .elements("title ");
string a=((Element) listfile.get(0)).getTextTrim();//Dom4j Tutorials
string b=((Element) listfile.get(1)).getTextTrim();//Lucene Studing
}
//取单个值出现异常问题
java.lang.noclassdeffounderror: org/jaxen/jaxenexception
使用dom4j解析XML时,要快速获取某个节点的数据,使用XPath是个不错的方法,dom4j的快速手册里也建议使用这种方式
执行时却抛出以下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenException
at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)
at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207)
at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:164)
缺少一个dom4j的基础包 除了dom4j-1.6.1.jar (306.5 KB) 的支持
还要
jaxen-1.1-beta-6.jar