I have this code to parse an RSS feed but for some reason my catch for itemDownLink is never firing. Can someone explain why?
public Channel parse(InputStream is) {
RootElement root = new RootElement("rss");
Element chanElement = root.getChild("channel");
Element chanTitle = chanElement.getChild("title");
Element chanLink = chanElement.getChild("link");
Element chanDescription = chanElement.getChild("description");
Element chanLastBuildDate = chanElement.getChild("lastBuildDate");
Element chanDocs = chanElement.getChild("docs");
Element chanLanguage = chanElement.getChild("language");
Element chanItem = chanElement.getChild("item");
Element itemTitle = chanItem.getChild("title");
Element itemDescription = chanItem.getChild("description");
Element itemLink = chanItem.getChild("link");
Element itemDate = chanItem.getChild("pubDate");
Element itemDownLink = chanItem.getChild("feedburner:origEnclosureLink");
}
Here is the catcher:
itemDownLink.setEndTextElementListener(new EndTextElementListener() {
public void end(String body) {
item.setDownloadLink(body);
}
});
You need to use the 2 parameter form of getChild and specify the feedburner uri (http://rssnamespace.org/feedburner/ext/1.0).
Element itemDownLink = chanItem.getChild("http://rssnamespace.org/feedburner/ext/1.0", "origEnclosureLink");