2
私はJBoss5.1.x AS、EJB3.0を使用しています。私は自分のデプロイメントに(Quartzを使って)ジョブを追加しようとしています。私は新しいサービスを登録しているので、アプリケーションのデプロイ時にスケジューラを起動します。サービスが起動時に登録されていません
私の問題は、私のアプリケーションを配備するときにサービスが登録されることがないことです。
マイコード:
インタフェース:
public interface ComponentMonitoringService
{
void create() throws Exception;
void start() throws Exception;
void stop();
void destroy();
}
サービス:
@Service(objectName = "com.mirs.ecms.timer:service=ServerStartupManager")
@Management(ComponentMonitoringService.class)
public class ServerStartupManager implements ComponentMonitoringService
{
private SchedulerFactory schedulerFactory = null;
private Scheduler scheduler = null;
Logger logger = Logger.getLogger("ecms.log");
public void create() throws Exception
{
}
public void start() throws Exception
{
// Write your startup code
initScheduler();
}
private void initScheduler() throws ParseException, SchedulerException
{
schedulerFactory = new StdSchedulerFactory();
scheduler = schedulerFactory.getScheduler();
JobDetail startECMSJob = new JobDetail("startECMSJob", "group1", StartECMSJob.class);
CronTrigger trigger1 = new CronTrigger("cronTrigger", "TriggersGroup1", "0 0/5 * * * ?");
scheduler.scheduleJob(startECMSJob, trigger1);
scheduler.start();
}
public void stop()
{
try
{
scheduler.shutdown();
}
catch (Exception e)
{
logger.error("ServerStartupManager Failure occured during Manager stop", e);
}
}
public void destroy()
{
}
}
アプリをどのように展開しますか? –
MyEclipse .. automatticly – rayman