[jboss-user] [EJB 3.0 Users] - Execute TimerService().createTimer() exactly once in a clust

pgib do-not-reply at jboss.com
Tue Sep 8 15:00:52 EDT 2009


First off, I've read the article at: http://www.jboss.org/community/wiki/DeployingEJB3TimersInCluster  I now have a SLSB with an @Timeout which is deployed with: <depends>jboss.ha:service=HASingletonDeployer,type=Barrier</depends> 

The problem is, unlike the article linked above, I will not be starting the timers multiple times over the lifetime of the application.  In my case, I want the timer to be started exactly once for the whole cluster.

I previously had a ServletContextListener subclass where contextInitialized() would kill all timers and start them.  The problem is, now if I have more nodes join the cluster, the timers are killed and recreated.  Is there a better way to accomplish this?

Additionally, I thought maybe I could start the Timer in the @PostConstruct of the SLSBs themselves.  However, this fails with TimerService.getTimers should not be access from this bean method: IN_EJB_CREATE

Any help regarding this is appreciated! Thanks.

View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4254043#4254043

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4254043

More information about the jboss-user mailing list