2009-12-28 4 views
1

quelqu'un peut-il expliquer comment utiliser le rome media-rss plugin trouvé here?l'utilisation de rome media rss plugin

J'ai essayé l'utilisation de l'échantillon et tout ce que je pouvais trouver dans google (ce qui n'est pas beaucoup), mais ne pouvait pas le faire fonctionner. Plus précisément, getModule (MediaModule.URI) qui est supposé renvoyer un MediaModule renvoie null sur un flux media-rss. getModules() (notez le pluriel) sur ce flux renvoie seulement un module qui est un DCModule (qu'est-ce qu'un DCModule?)

Peut-être que je dois faire quelque chose pour configurer rome ou quelque chose pour utiliser le plugin. ?

Et en passant, le flux provient de l'API de YouTube.

+0

Le DCModule renvoie les métadonnées Dublin Core - voir http://dublincore.org/ –

Répondre

1

En fait la seule configuration qui a fonctionné pour moi utilise la dernière version de Rome (rome-1.0.jar) avec la dernière version de jdom (jdom.jar version 1.1.1) et obtenir la dernière version de mediarss-0.2 .2.jar que ce n'est pas dans le référentiel de Rome, si ce n'est pas venu en pièce jointe de ce forum thread.

Une fois que vous avez tous ces éléments, il suffit de vérifier que votre appel à l'API YouTube renvoie un flux RSS car avec l'alimentation standard Atom il ne fonctionne pas du tout et donner un essai au code suivant:

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);  
    } 

l'appel à l'API YouTube c'est comme un:

... gdata.youtube.com/feeds/api/videos?q=U2 & alt = rss & v = 2

et les résultats (partiellement) obtenus sont ceux-ci:

U2 Super Bowl 2002 montrent la mi-temps - 9/11 Tribute MediaEntryModuleImpl.player = null MediaEntryModuleImpl.mediaGroups [0] = null .defaultContentIndex MediaEntryModuleImpl.mediaGroups [0] .contents [0] = full .expression MediaEntryModuleImpl.mediaGroups [0] .contents [0] = null .player MediaEntryModuleImpl.mediaGroups [0] .contents [0] = null .Width MediaEntryModuleImpl. mediaGroups [0] .contents [0] .samplingrate = null MediaEntryModuleImpl.mediaGroups [0] .contents [0] .type = applicat ion/x-shockwave-flash . .

J'espère que cela vous aide.