Q: How to use an XPage as XML source (RSS)

I noticed that you can specify an RSS playlist for a movie in the JW Player. The playlist should be similar according like this example file.

In my Bildr application I am still relying on a the combination of a view/$$viewtemplate form/webqueryopen agent combination which seems like a deprecated approach in XPages Domino development.

Since I haven’t used an XPage before as an RSS feed I am wondering what would be the easiest approach/implementation?

  • my XPage should be able to take a document UNID as identifier
  • my XPage should perform a search and return a collection with an X number of documents from the same author (channel)

Any help is appreciated. Thanks!

I will also update the RSS feed in Bildr with the solution…

Below an impression how far I have come:

(probably the app will be uploaded on OpenNTF in case I manage to qualify for the IP scan =))

Advertisements

6 thoughts on “Q: How to use an XPage as XML source (RSS)

  1. Mark Leusink 2010-December-30 / 1:03 pm

    Patrick,

    I’d recommend reading 3 things to get you started:

    – Two posts about rendering your own output in an XPage (http://www.wissel.net/blog/d6plinks/shwl-7mgfbn and http://www.wissel.net/blog/d6plinks/SHWL-8BYMW8). This technique is used for instance in the getAuthKey XPage in Bildr, although not for XML output.

    – The Designer help (topic: Lotus Domino Designer XPages Reference -> DOM).

    Basic DOM sample: create an XPage, set the “rendered” property to false, and enter this in the beforeRenderResponse event:

    /******************** START SAMPLE CODE ********************/

    var con:javax.faces.context.ExternalContext = facesContext.getExternalContext();
    var response:com.ibm.xsp.webapp.XspHttpServletResponse = con.getResponse();
    var writer = response.getWriter();

    response.setHeader(“Cache-Control”, “no-cache”);
    response.setContentType(“text/xml”);

    var domDoc:DOMDocument = DOMUtil.createDocument();

    var rootNode:DOMElement = domDoc.createElement(“videos”);

    //add video node
    var node:DOMElement = domDoc.createElement(“video”);
    node.setStringValue(“Avatar”);
    node.setAttribute(“year”, “2011”);
    rootNode.appendChild(node);

    //add video node
    var node:DOMElement = domDoc.createElement(“video”);
    node.setStringValue(“Meet the Parents – Little Fockers”);
    node.setAttribute(“year”, “2011”);
    rootNode.appendChild(node);

    domDoc.appendChild(rootNode);

    writer.write(“\n”);
    writer.write( domDoc.getXMLString() );

    writer.endDocument();
    facesContext.responseComplete();

    /******************** END SAMPLE CODE ********************/

  2. Patrick Kwinten 2010-December-30 / 1:33 pm

    Thansk for the links!

    I have more and more the feeling that Bildr is a great app for learning XPages. So many diff. techniques in it, yet undocumented 😉

    At least I experience among developers that it demonstrates well the capabilities of XPages.

    • Patrick Kwinten 2011-January-3 / 9:32 am

      hi Stephan, thank you for the link. I read the post but I fear in my case the RSS feeds are very simple so starting to use SAX seems a bit way out of reach for my project).

      I find it strange that I can not find a good blog post that explains how to build a simple RSS feed with help of XPages. I guess this document comes closest to what I am looking for:

      http://www.wissel.net/blog/d6plinks/shwl-7mgfbn

      In case you happen to know such a explanation please drop the link here.

      KR // Patrick

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s