1

谁能解释如何使用这里找到的 rome media-rss 插件?

我尝试了示例用法以及在 google 中可以找到的所有其他内容(数量不多),但无法使其正常工作。具体来说,应该返回 MediaModule 的 getModule(MediaModule.URI) 在 media-rss 提要上返回 null。该提要上的 getModules() (注意复数)仅返回一个 DCModule 模块(DCModule 到底是什么?)

也许我需要做一些事情来配置罗马或使用插件..?

顺便说一句,提要来自 youtube 的 api。

4

1 回答 1

1

实际上,唯一对我有用的配置是使用最新版本的罗马 (rome-1.0.jar) 和最新版本的 jdom (jdom.jar 版本 1.1.1) 并获得最新版本的 mediarss-0.2.2.jar它不在罗马存储库中,如果不是作为该论坛主题的附件出现的话。

拥有所有这些元素后,只需验证您对 YouTube API 的调用是否返回 RSS 提要,因为使用标准 Atom 提要它根本不起作用,并尝试以下代码:

    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=null MediaEntryModuleImpl.mediaGroups[0].contents[0].expression=full MediaEntryModuleImpl.mediaGroups[0].contents[ 0].player=null MediaEntryModuleImpl.mediaGroups[0].contents[0].width=null MediaEntryModuleImpl.mediaGroups[0].contents[0].samplingrate=null MediaEntryModuleImpl.mediaGroups[0].contents[0].type=应用程序/x-shockwave-flash 。.

我希望这可以帮助你。

于 2010-02-13T05:36:46.303 回答