TaskHandler 接口
任务处理程序是一个用户定义的无状态会话 Bean,它由使用 BeanTaskInfo 对象创建的任务调用。
任务处理程序 Bean 使用以下 Home 接口和远程接口,这些接口是使用 Rational® Application
Developer 等组装工具在部署描述符中进行定义的:
com.ibm.websphere.scheduler.TaskHandlerHome com.ibm.websphere.scheduler.TaskHandler
bean 本身需要实现远程接口中定义的 process() 方法。有关详细信息,请参阅 API 文档中的“TaskHandler 接口”。
一旦 EJB 创建完毕并在企业应用程序中成为可用时,BeanTaskInfo 任务在运行时即可调用。请参阅开发调用会话 Bean 的任务主题以获取详细信息。
如果使用 BeanTaskInfo 对象创建任务,每当运行任务时,将调用 TaskHandler 会话 Bean 中的 process() 方法。因为任务的 TaskStatus 对象被作为参数传递到 process() 方法,任务处理程序将确定不同类型的任务相关信息,例如:它的下一次触发时间、剩余的重复次数以及它的名称和标识。
process() 方法还可以更改自己的状态。但是,此任务必须与调度程序运行于同一事务中。因此,仅当任务使用 Required 或 Mandatory 容器管理的事务类型时,处于运行状态的任务可以修改自己。如果在 process() 方法中指定了 Requires New 事务类型,那么所有管理函数将死锁。