XLM giver ulogisk fejl
Ok, jeg tilgår en .rss på nettet for at bruge den til at vise et par nyheder på en JSP side jeg har smækket sammen for sjov. Det har virket fint i et par år, men pludseligt får jeg en fejl på den. Jeg arbejder lidt med det, og beslutter så at lave det om til ren java for at se om det er webserveren der brokker sig - det er det dog ikke. Tag et kig på den kodestump jeg har brugt til at teste det efter.**KODE OFF**
/*
* Author: JvA
* Created: 14. oktober 2004 10:19:02
* Modified: 14. oktober 2004 10:19:02
*/
import org.jdom.Document;
import org.jdom.Namespace;
import org.jdom.Element;
import org.jdom.Attribute;
import org.jdom.input.SAXBuilder;
import java.net.URL;
import javax.xml.parsers.SAXParser;
import java.util.List;
class Test
{
public static void main(String [] args)
{
try
{
SAXBuilder builder = new SAXBuilder();
List l;
Document doc = builder.build(new URL("http://www.camelotherald.com/xml/news.rss"));
Element root = doc.getRootElement();
List list = root.getChildren();
Element ele = (Element)list.get(2);
System.out.println(ele.getName());
ele = root.getChild("ele.getName()");
System.out.println(ele);
}
catch(Exception e)
{
System.out.print(e);
}
}
}
**KODE OFF**
Som I ser tilgår jeg som sagt en .rss og henter så root-elementet. Så vælger jeg at hente element nummer to og printer navnet - som helst skulle være (og er) "item".
Nu kommer det sjove så - hvis jeg siger at jeg gerne vil have det første child-element med navnet "item" som findes under root-elementet, så får jeg null. Vi har lige konkluderet at det findes, og at navnet er "item", men når jeg søger efter det sker der ingenting.
Jeg viser lige API'en til den jdom jeg benytter.
Element - getChild(java.lang.String name)
This returns the first child element within this element with the given local name and belonging to no namespace.
Element - getChild(java.lang.String name, Namespace ns)
This returns the first child element within this element with the given local name and belonging to the given namespace.
Og ja - jeg har prøvet med både getChild("item") og getChild("item",ns); uden held. Adressen til hele JDOM api'en er http://www.jdom.org/docs/apidocs/index.html.
