2009-12-28 130 views
1

任何人都可以解释如何使用罗马媒体rss插件发现here罗马媒体rss插件的使用

我试过了样本用法和其他一切,我可以在谷歌找到(这不是很多),但无法让它工作。特别是,应该返回MediaModule的getModule(MediaModule.URI)在media-rss提要上返回null。 getModules()(注意复数)在该饲料返回只有一个模块是一个DCModule(什么是一个DCModule?)

也许有一些我需要做的配置罗马或东西来使用插件。 。?

顺便说一下,这个feed是来自youtube的api。

+0

DCModule返回都柏林核心元数据 - 请参阅http://dublincore.org/ – 2013-03-11 08:35:06

回答

1

实际上,唯一适用于我的配置是使用最新版本的罗马(rome-1.0.jar)和最新版本的jdom(jdom.jar版本1.1.1),并获得最新版本的mediarss-0.2 .jar它不在罗马知识库中,如果不是作为这个forum thread的附件出现的话。

一旦你拥有所有这些元素,只是验证您对YouTube API调用返回的RSS Feed,因为与标准的Atom feed它在所有不起作用,给一个尝试下面的代码:

URL url = new URL(urlAddress); 
    SyndFeedInput input = new SyndFeedInput(); 
    SyndFeed feed = input.build (new XmlReader(url)); 
    for (Iterator<SyndEntry> i = feed.getEntries().iterator(); i 
    .hasNext();) { 
    SyndEntry entry = (SyndEntry)i.next(); 
    System.out.println(entry.getTitle()); 
    MediaEntryModule m = (MediaEntryModule)entry.getModule(MediaEntryModule.URI); 
      System.out.println(m);  
    } 

对YouTube API的调用是像这样的:

... gdata.youtube.com/feeds/api/videos?q=U2 & ALT = RSS & v = 2

和所获得的结果(部分地)是这些的:

U2超级碗半场展示2002 - 9/11悼念 MediaEntryModuleImpl.player = NULL MediaEntryModuleImpl.mediaGroups [0] = .defaultContentIndex空 MediaEntryModuleImpl.mediaGroups [0] .contents [0] = .expression充分 MediaEntryModuleImpl.mediaGroups [0] .contents [0] = .player空 MediaEntryModuleImpl.mediaGroups [0] .contents [0] = .WIDTH空 MediaEntryModuleImpl。 mediaGroups [0] .contents [0] .samplingrate = null MediaEntryModuleImpl.mediaGroups [0] .contents [0] .type = applicat ion/x-shockwave-flash 。 。

我希望这可以帮助你。