Hi, I've created a panel that is displayed on the right side (of every page). This panel displays the five top titles of an external weblog using the rss macro : {rss:feed=http://jroller.com/rss/agoncal|count=5} The problem that I'm facing is that the rss feed is broken (JRoller's problem). And because of that, the macro hangs (for quite a while) and then throws an exception. Because it's displayed on everypage, navigating in the wiki becomes really slow. Is there a way to do something better ? Antonio (BTW I'm using RC2) 12:40:01,578 WARN http-8080-Processor25 http://localhost:8080/xwiki/bin/view/Main/ MacroFilter:handleMatch:139 - MacroFilter: unable java.io.IOException: Error processing http://jroller.com/rss/agoncal: Connection timed out: connect at com.xpn.xwiki.render.macro.rss.RSSMacro.execute(RSSMacro.java :102) at org.radeox.filter.MacroFilter.handleMatch(MacroFilter.java:117)
Hi, There is not much XWiki can do if a RSS feed displayed in a page is slow or does not respond. We have improved a little XWiki's behavior by adding a timeout (default to 60 seconds) in the latest trunk code. However this won't completely solve your problem. If you want to solve it, you want either to use a cache (this exists in the FeedPlugin) or to use the FeedPlugin's capability of storing RSS Feeds in Wiki pages. Checkout the FeedPlugin API Ludovic Antonio Goncalves a écrit :
Hi,
I've created a panel that is displayed on the right side (of every page). This panel displays the five top titles of an external weblog using the rss macro :
{rss:feed=http://jroller.com/rss/agoncal|count=5 <http://jroller.com/rss/agoncal%7Ccount=5>}
The problem that I'm facing is that the rss feed is broken (JRoller's problem). And because of that, the macro hangs (for quite a while) and then throws an exception. Because it's displayed on everypage, navigating in the wiki becomes really slow. Is there a way to do something better ?
Antonio (BTW I'm using RC2)
12:40:01,578 WARN http-8080-Processor25 http://localhost:8080/xwiki/bin/view/Main/ MacroFilter:handleMatch:139 - MacroFilter: unable java.io.IOException: Error processing http://jroller.com/rss/agoncal: Connection timed out: connect at com.xpn.xwiki.render.macro.rss.RSSMacro.execute(RSSMacro.java:102) at org.radeox.filter.MacroFilter.handleMatch (MacroFilter.java:117)
------------------------------------------------------------------------
-- You receive this message as a subscriber of the [email protected] mailing list. To unsubscribe: mailto:[email protected] For general help: mailto:[email protected]?subject=help ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
-- Ludovic Dubost Blog: http://www.ludovic.org/blog/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost AIM: nvludo Yahoo: ludovic
Ludovic: We've battled this problem for quite a while now, without much success - even to the point of putting a ridiculously long (e.g. > 24hrs) cache lifetime, and independently refreshing the cache. In some cases, we finally just removed the problematic feed. When I built a plugin to cache the results of a long-lived and expensive fetch of an XML document, I found another difficulty that may shed light on this situation: Occasionally, my plugin hangs (forever) even though the fetch isn't having problems. Once this starts, any other thread that attempts to access the cached XML object also hangs. My working hypothesis is that either an error in the fetching - I'm using org.dom4j.io.SAXReader.read(InputStream) - or a user abandoning the page is causing the refresh in one thread to leave the lock in place, causing any other thread to wait for the update, which now won't happen. I haven't been able to verify this, but it's the nearest thing to an explanation I can come up with. If this is the case, I'm thinking that I should set the cache parameters to disable waiting on a refresh, if I can do it at the granularity of an individual cache instance. The correct way is probably to find what's causing the orphaned lock, if that's what's happening. I have not been able to evoke any log output to give me clues on this. brain[sic]
-----Original Message----- From: Ludovic Dubost [mailto:[email protected]] Sent: Monday, May 07, 2007 12:25 PM To: [email protected] Subject: Re: [xwiki-users] RSS macro make the entire site to hang
Hi,
There is not much XWiki can do if a RSS feed displayed in a page is slow or does not respond. We have improved a little XWiki's behavior by adding a timeout (default to 60 seconds) in the latest trunk code.
However this won't completely solve your problem. If you want to solve it, you want either to use a cache (this exists in the FeedPlugin) or to use the FeedPlugin's capability of storing RSS Feeds in Wiki pages. Checkout the FeedPlugin API
Ludovic
Antonio Goncalves a écrit :
Hi,
I've created a panel that is displayed on the right side (of every page). This panel displays the five top titles of an external weblog using the rss macro :
{rss:feed=http://jroller.com/rss/agoncal|count=5 <http://jroller.com/rss/agoncal%7Ccount=5>}
The problem that I'm facing is that the rss feed is broken (JRoller's problem). And because of that, the macro hangs (for quite a while) and then throws an exception. Because it's displayed on everypage, navigating in the wiki becomes really slow. Is there a way to do something better ?
Antonio (BTW I'm using RC2)
12:40:01,578 WARN http-8080-Processor25 http://localhost:8080/xwiki/bin/view/Main/ MacroFilter:handleMatch:139 - MacroFilter: unable java.io.IOException: Error processing http://jroller.com/rss/agoncal: Connection timed out: connect at com.xpn.xwiki.render.macro.rss.RSSMacro.execute(RSSMacro.java:102) at org.radeox.filter.MacroFilter.handleMatch (MacroFilter.java:117)
----------------------------------------------------------------------
--
-- You receive this message as a subscriber of the [email protected] mailing list. To unsubscribe: mailto:[email protected] For general help: mailto:[email protected]?subject=help ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
-- Ludovic Dubost Blog: http://www.ludovic.org/blog/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost AIM: nvludo Yahoo: ludovic
This might be a little complicated, but make a page that contains only the {rss:feed=http://jroller.com/rss/agoncal|count=5} tag, then in your right menu, use an AJAX call to call that page (with xpage=plain appended to the URL so that the menus and headers don't appear). That way, if it takes a while to come up, it shouldn't interfere with the loading of the rest of the page. We've written our own AJAX library a while back, but I think there's one in XWiki now as well. Hope this helps. -Tom -- Tom Kliethermes eSupport Initiatives IBM Information Management (913) 599-7240 Fax: (913) 599-8590 http://www.ibm.com/software/data "Antonio Goncalves" <[email protected]> 05/04/2007 05:45 AM Please respond to [email protected] To [email protected] cc Subject [xwiki-users] RSS macro make the entire site to hang Hi, I've created a panel that is displayed on the right side (of every page). This panel displays the five top titles of an external weblog using the rss macro : {rss:feed=http://jroller.com/rss/agoncal|count=5} The problem that I'm facing is that the rss feed is broken (JRoller's problem). And because of that, the macro hangs (for quite a while) and then throws an exception. Because it's displayed on everypage, navigating in the wiki becomes really slow. Is there a way to do something better ? Antonio (BTW I'm using RC2) 12:40:01,578 WARN http-8080-Processor25 http://localhost:8080/xwiki/bin/view/Main/ MacroFilter:handleMatch:139 - MacroFilter: unable java.io.IOException: Error processing http://jroller.com/rss/agoncal: Connection timed out: connect at com.xpn.xwiki.render.macro.rss.RSSMacro.execute(RSSMacro.java:102) at org.radeox.filter.MacroFilter.handleMatch (MacroFilter.java:117) -- You receive this message as a subscriber of the [email protected] mailing list. To unsubscribe: mailto:[email protected] For general help: mailto:[email protected]?subject=help ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
participants (4)
-
Antonio Goncalves -
Ludovic Dubost -
Thomas Kliethermes -
THOMAS, BRIAN M (ATTSI)