Ho questa classe java, il file si chiama DescendantDemo.java:
E il documento XML (web.xml):codice:package xml; import java.io.*; import java.util.*; import org.jdom.*; import org.jdom.input.*; import org.jdom.output.*; import org.jdom.xpath.XPath; public class DescendantDemo { public static void main(String[] args) throws Exception { SAXBuilder builder = new SAXBuilder(); Document doc = builder.build("src/xml/web.xml"); XPath x = XPath.newInstance("/collection/dvd/@id"); List list = x.selectNodes(doc); listAttributes(list, ""); } private static void listElements(List es, String indent) { for (Iterator i = es.iterator(); i.hasNext();) { Element e = (Element) i.next(); listElement(e, indent); } } private static void listElement(Element e, String indent) { System.out.println(indent + "*Element, name:" + e.getName() + ", text:" + e.getText().trim()); //List all attributes List as = e.getAttributes(); listAttributes(as, indent + " "); //List all children List c = e.getChildren(); listElements(c, indent + " "); } private static void listAttributes(List as, String indent) { for (Iterator i = as.iterator(); i.hasNext();) { Attribute a = (Attribute) i.next(); System.out.println(indent + "*Attribute, name:" + a.getName() + ", value:" + a.getValue()); } } }
Quando compilo mi dice:codice:<?xml version="1.0" encoding="UTF-8"?> <collection> <dvd id="A"> <title>Lord of the Rings: The Fellowship of the Ring</title> <length>178</length> <actor>Ian Holm</actor> <actor>Elijah Wood</actor> <actor>Ian McKellen</actor> </dvd> <dvd id="B"> <title>The Matrix</title> <length>136</length> <actor>Keanu Reeves</actor> <actor>Laurence Fishburne</actor> </dvd> <dvd id="C"> <title>Amadeus</title> <length>158</length> <actor>F. Murray Abraham</actor> <actor>Tom Hulce</actor> <actor>Elizabeth Berridge</actor> </dvd> <dvd id="D"> <title>Chain Reaction</title> <length>106</length> <actor>Morgan Freeman</actor> <actor>Keanu Reeves</actor> </dvd> </collection>
Dove è l'errore???codice:Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenException at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.jdom.xpath.XPath.newInstance(XPath.java:134) at xml.DescendantDemo.main(DescendantDemo.java:21)punta alla riga in rosso Java Result: 1

Rispondi quotando