【发布时间】:2015-05-28 07:51:54
【问题描述】:
我有一个代码是从活动 mq 获取 dat 并在 Rss 提要上显示数据,但是代码没有给我提要上的数据,我得到一个空列表,原因似乎是 XmlReader reader= null ;我已经设置了这条线,并且在整个执行过程中,dthe reder 似乎为空。
public List<RssFeedMessage> readRssFeeds(@PathVariable String sourceName) {
XmlReader reader = null;
RssFeedMessage rssFeedMessage = null;
StringBuffer feedUrl = new StringBuffer("http://").append(ipaddress).append(":")
.append(port).append("/admin/queueBrowse/").append(sourceName).append("?view=rss&feedType=rss_2.0");
List<RssFeedMessage> rssFeedMessages = new ArrayList<RssFeedMessage>();
try {
URL url = new URL(feedUrl.toString());
reader = new XmlReader(url);
SyndFeed feedMsg = new SyndFeedInput().build(reader);
List<SyndEntry> feedEntries = feedMsg.getEntries();
for (SyndEntry entry : feedEntries) {
rssFeedMessage = new RssFeedMessage();
rssFeedMessage.setTitle(entry.getTitle());
rssFeedMessage.setDescription(entry.getDescription().getValue());
rssFeedMessage.setDate(OptimerUtil.simpleDateHourTimeInd.format(entry.getPublishedDate()));
rssFeedMessages.add(rssFeedMessage);
}
} catch(IOException e){
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (FeedException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
}
}
}
return rssFeedMessages;
}
}
它只是退出,因为阅读器在我在阅读器 = new XmlReader(url); 上得到 io 异常时一直保持为空;
【问题讨论】:
-
请发布异常堆栈跟踪。如果您打开浏览器并将内置的 url 作为地址粘贴进去,它会起作用吗?
-
@OldCurmudgeon 它向我展示了一堆我什至不需要的废话
标签: java xml-parsing activemq xmlreader