Hi. 

CalenderTimers created with following code are not recovered after TomEE 
restart. Are there some TomEE properties to make timers persistent across 
restarts? 
There is issue reproduction: https://github.com/eiskonzept/tomee.git
Just start tomee plugin with node1 profile, open <context_path>/schedule.xhtml 
and push "Schedule timer" Button. 
Timer is scheduled(executed every second, see log) and listed on the page. 
Restart application, open <context_path>/schedule.xhtml again. There are no 
scheduled timers. 


Regards. 
Dmitry Volkov. 

Timer creation: 
    @Resource
    private TimerService timerService;

    @Override
    @Timeout
    public void scheduleMe() {
        log.warn("Scheduled method executed. " + new Date().toString());
    }

    @Override
    public void schedule() {
        ScheduleExpression schedule = new ScheduleExpression();
        schedule.hour("*");
        schedule.minute("*");
        schedule.second("*");
        timerService.createCalendarTimer(schedule, new TimerConfig(null, true));
    }

Quartz config: 
        org.quartz.scheduler.instanceName = myScheduler
        org.quartz.scheduler.instanceId = instance1
        org.quartz.scheduler.threadsInheritContextClassLoaderOfInitializer=true
        org.quartz.scheduler.makeSchedulerThreadDaemon=true
        org.quartz.jobStore.makeThreadsDaemons=true
        org.quartz.jobStore.dataSource = testDS
        org.quartz.jobStore.nonManagedTXDataSource = testDSNonJta
        org.quartz.threadPool.threadCount = 10
        org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreCMT
        org.quartz.jobStore.driverDelegateClass = 
org.quartz.impl.jdbcjobstore.HSQLDBDelegate
        org.quartz.jobStore.isClustered = true
        org.quartz.jobStore.tablePrefix = QRTZ_

        org.quartz.dataSource.testDS.jndiURL=java:/jdbc/testDS
        org.quartz.dataSource.testDSNonJta.jndiURL=java:/jdbc/testDSNonJta

DataSource config: 
    <Resource id="jdbc/testDS" type="javax.sql.DataSource">
        JdbcDriver org.hsqldb.jdbcDriver
        JdbcUrl jdbc:hsqldb:file:test.db
        UserName sa
        Password
        JtaManaged true
        ConnectionProperties
    </Resource>

    <Resource id="jdbc/testDSNonJta" type="javax.sql.DataSource">
        JdbcDriver org.hsqldb.jdbcDriver
        JdbcUrl jdbc:hsqldb:file:test.db
        UserName sa
        Password
        JtaManaged false
        ConnectionProperties
    </Resource>


Reply via email to