[jboss-user] [JBoss Portal] - Re: Refreshing a portlet's cache
nollie
do-not-reply at jboss.com
Thu Jan 18 11:19:44 EST 2007
Unfortunately, no I didn't find a good way to do this. At one point I had my scheduler bean running but I hadn't figured out how to be sure that it was using the same classloader as my portlet.
Since my cache refresh was under 10 seconds we decided to let one user per day take the 'hit' and table the issue. In the future when we are using EJBs I'll revisit this.
Here is a very simple timer example:
CacheDumpScheduler.java:
package com.foo;
|
| import java.util.Date;
|
| import org.jboss.varia.scheduler.Schedulable;
|
| public class CacheDumpScheduler implements Schedulable {
|
| public void perform(Date now, long remainingRepetitions) {
| MyPortlet.resetCache();
|
| }
|
|
| }
META-INF/jboss-service.xml:
<?xml version="1.0" encoding="UTF-8"?>
| <server>
| <mbean code="org.jboss.varia.scheduler.Scheduler" name="com.foo:service=CacheDumpScheduler">
| <attribute name="StartAtStartup">true</attribute>
| <attribute name="SchedulableClass">
| com.foo.CacheDumpScheduler
| </attribute>
| <attribute name="SchedulableArguments">
| </attribute>
| <attribute name="SchedulableArgumentTypes">
| </attribute>
| <attribute name="InitialStartDate">NOW</attribute>
| <attribute name="SchedulePeriod">6000</attribute>
| <attribute name="InitialRepetitions">-1</attribute>
| <depends>jboss.web:service=WebServer</depends>
| </mbean>
|
| </server>
Hope that helps
Jon
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4003389#4003389
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4003389
More information about the jboss-user
mailing list