XML, jdom og servlets?
Hejjeg har skrevet et stykke kode som skulle tage alle vores jokes i en given kategori og skrive ud i xml form... hvorfor skriver den et tomt xml dokument ud som i kan se på linket...?
Kode:
response.setContentType("text/html");
//PrintWriter out = response.getWriter();
String x = request.getParameter("category");
Document document = new SAXBuilder().build(new File("/home/cleo1/u031407/dWebTek/jokeml.xml"));
Namespace ns = Namespace.getNamespace("jml","http://www.brics.dk/dWebTek/JokeML");
SortedSet jokes = Collections.synchronizedSortedSet(new TreeSet());
List children = document.getRootElement().getChildren("joke");
Iterator iter = children.iterator();
Element root = new Element("collection",ns);
while (iter.hasNext()) {
Element e = new Element("category", root.getNamespace());
Element joke = (Element) iter.next();
String s = joke.getAttributeValue("category");
if (s.equals(x)) {
e.addContent(s);
root.addContent(e);
}
}
Document d = new Document(root);
new XMLOutputter().output(d, response.getOutputStream());
Link:
http://dwebtek.daimi.au.dk:8080/u031407/JokeServer/Retrieve?category=animals
XML dokument som den henter fra:
<?xml version="1.0" encoding="iso-8859-1"?>
<jml:collection xmlns:jml="http://www.brics.dk/dWebTek/JokeML">
<jml:joke id="u655632gs6" category="animals">
<jml:title>Two Cows in a Field</jml:title>
<jml:date>11022004</jml:date>
<jml:setup>
Two cows are standing in a field eating grass. The first cow says: "Moooo"!
</jml:setup>
<jml:punchline>
The second cow replies: "Hey, I was just gonna say that"!
</jml:punchline>
</jml:joke>
<jml:joke id="u655632gs7" category="århus joke">
<jml:title>Two Cows in a Field</jml:title>
<jml:date>11022004</jml:date>
<jml:setup>
Two cows are standing in a field eating grass. The first cow says: "Moooo"!
</jml:setup>
<jml:punchline>
The second cow replies: "Hey, I was just gonna say that"!
</jml:punchline>
</jml:joke>
</jml:collection>
