在liferay6.1中使用调度器

参考文章出处:http://www.huqiwen.com/2012/10/22/liferay-6-1-development-study-11-use-scheduler/

按照以上文章的做法,会报一个xml的错误,解决办法是:


在liferay-portlet.xml里面注册这个调度类,并按如下格式添加,示例代码如下

<portlet>
	<portlet-name>news-portlet</portlet-name>
	<icon>/icon.png</icon>
	<!--<scheduler-entry>放在<icon>下面-->
	<scheduler-entry>
		<scheduler-event-listener-class>
			xxx.cmsnewsgather.NewsGatherMessageListener(上面此类的全路径)
		</scheduler-event-listener-class>
		<trigger>
			<simple>
				<simple-trigger-value>30</simple-trigger-value>
				<time-unit>second</time-unit>
			</simple>
		</trigger>
	</scheduler-entry>
	<instanceable>false</instanceable>
	<header-portlet-css>/css/main.css</header-portlet-css>
	<footer-portlet-javascript>
		/js/main.js
	</footer-portlet-javascript>
	<css-class-wrapper>news-portlet</css-class-wrapper>
</portlet>
这样就不会报xml错误了,各标签的作用说明如下:

scheduler-event-listener-class:里面的类为第一步里面编写的类

simple-trigger-value:里面为调度周期的数值,time-unit为调度周期的单位。上面的意思为每15分钟执行一次。此时间也可以从配置文件中读取。则将此       标签完成<property-key>newsgather.gather.time</property-key>,其中的newsgather.gather.time为属性文件(portal.properties)里面配置的值

Time-unit:表示周期的周期可以为:day、hour、minute、second、week这几个单位。

3、  上面的代码即完成了一个调度器的开始,内容为每15分钟执行一次第一步类里面的doReceive()方法。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值