import org.jdom.JDOMException; import org.jdom.input.SAXBuilder; import org.jdom.*; import org.jdom.output.XMLOutputter; import java.io.*; import java.util.*; public class XmlChecker { //?xml:stylesheet type="text/xsl" href="valformad.xsl"> public static void main(String[] args){ if (args.length == 0) System.out.println("måste ge en xml fil som argument!"); try{ //uppg5a SAXBuilder builder = new SAXBuilder(); String filen = args[0]; Document doc = builder.build(new File(filen)); XMLOutputter fmt = new XMLOutputter(" ", true); fmt.output(doc, System.out); System.out.println(filen + " is wellformed!"+"\n"); //uppg5b Element root = doc.getRootElement(); listNodes(root); } catch (JDOMException e) { //hittar fel!! System.out.println(args[0] + " ej wellformed!"); System.out.println(" kolla " + e.getMessage()); } catch (Exception e) { e.printStackTrace(); } } public static void listNodes(Element elemroot){ //printSpaces(depth); Object o,int depth, //if (o instanceof Element) { // Element elem = (Element) o; System.out.println("Element: " +elemroot.getName()); System.out.println("VALUE: "+elemroot.getContent()); List children = elemroot.getChildren(); for (int i=0;i