EC-One ナレッジセンター レスキューサービス ブログ さんの方で見かけたトピック。035 jboss-5.1.0.GAでcronのような定期処理を実現という記事。
一番簡単な方法が紹介されていなかったので紹介。その方法というのはMDB。コンパイルしてデプロイすればおしまい。cron形式で実行を指定できる。
http://community.jboss.org/wiki/QuartzSchedulerIntegration
以下コード例。
import javax.ejb.ActivationConfigProperty; import javax.ejb.MessageDriven; import org.jboss.annotation.ejb.ResourceAdapter; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; @MessageDriven( activationConfig={ @ActivationConfigProperty(propertyName="cronTrigger", propertyValue="0/30 * * * * ?") }) @ResourceAdapter("quartz-ra.rar") public class QuartzJobMDB implements Job { public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { System.out.println(new java.util.Date()); } }
単純なインターバル処理だったら前に書いたBeanShellでサクっと作っちゃってももちろん良い。