Schedule is much easier than Message bus. Actually it uses Message Bus. We just need two steps to make it works.
1. Write a class implements MessageListener, in the class's receive method, we do our job.
import com.liferay.portal.kernel.messaging.Message;
import com.liferay.portal.kernel.messaging.MessageListener;
import com.liferay.portal.kernel.messaging.MessageListenerException;
public class MyScheduler implements MessageListener{
@Override
public void receive(Message arg0) throws MessageListenerException {
System.out.println("My Schedule has served...");
}
}
2. configure in liferay-portlet.xml, we set the details of scheduler like time, we can use two ways, simple or cron. Both of them works well, I prefer Cron. You can put it after <icon> node.
<scheduler-entry>
<scheduler-event-listener-class>com.rujuan.book.controller.MyScheduler</scheduler-event-listener-class>
<trigger>
<simple>
<simple-trigger-value>1</simple-trigger-value>
<time-unit>minute</time-unit>
</simple>
<!--<cron>
<cron-trigger-value>0 0/1 * * * ?</cron-trigger-value>
</cron> -->
</trigger>
</scheduler-entry>
Now, all configuration are done! Wait for Magic.