Mam następujący kod do uruchomienia na Apache-tomee, używam eclipse do kodowania i chcę uruchomić moją prostą pracę harmonogramu za pomocą adnotacji @Schedule przy uruchomieniu aplikacji.EJB-3.1 @ Uruchomienie i @ Anilinguowanie w Apache Tomee do wykonania timera
@Startup
@Singleton
public class ScheduleEJB {
private static int count = 0;
@Schedule(second="*/10", minute="*", hour="*", info="MyTimer")
public void execute() {
System.out.println("its running count..."+count);
count++;
}
}
Kiedy wdrożony ten kod na Tomee, to po mnie następujący komunikat i nie można uruchomić moją metodę harmonogram execute() automatycznie przy starcie, gdzie jak ten kod działa poprawnie w GlassFish, ale ja nie zamierzam używać go albo glassfish z jboss.
21 grudnia 2012 09:59:45 org.quartz.impl.StdSchedulerFactory instancję
INFO: Użycie domyślnego implementację ThreadExecutor
21 grudnia 2012 09:59:45 org.quartz.core. SchedulerSignalerImpl
INFO: Zainicjowany Harmonogram sygnalizator typu: klasa org.quartz.core.SchedulerSignalerImpl
21 grudnia 2012 09:59:45 org.quartz.core.QuartzScheduler
INFO: Quartz Scheduler v.2.1.6 stworzona .
Dec 21, 2012 9:59:45 AM org.quartz.simpl.RAMJobStore initialize
INFO: Zainicjowano RAMJobStore.
21 grudnia 2012 09:59:45 org.quartz.core.QuartzScheduler zainicjować
INFO: Harmonogram meta-dane: Quartz Scheduler (v2.1.6) 'OpenEJB-TimerService-Scheduler' z instanceid 'OpenEJB'
Klasa programu planującego: "org.quartz.core.QuartzScheduler" - działa lokalnie.
NIE ROZPOCZĘTA.
Obecnie w trybie gotowości.
Liczba wykonanych zadań: 0
Korzystanie z puli wątków "org.apache.openejb.core.timer.DefaultTimerThreadPoolAdapter" - z 0 wątkami.
Korzystanie z job-store "org.quartz.simpl.RAMJobStore" - które nie obsługuje funkcji trwałości. i nie jest skupiony.
21 grudnia 2012 09:59:45 org.quartz.impl.StdSchedulerFactory wystąpienia
INFO kwarcowy planującego „OpenEJB-TimerService-Harmonogram” inicjowane z zewnętrznego źródła przykład właściwości.
21 grudnia 2012 09:59:45 org.quartz.impl.StdSchedulerFactory instancję
INFO: Quartz wersja harmonogramu: 2.1.6
21 grudnia 2012 09:59:45 org.quartz.core.QuartzScheduler start
INFO: Scheduler OpenEJB-TimerService-Scheduler _ $ _ OpenEJB rozpoczęty.
21 grudnia 2012 09:59:45 org.apache.openejb.assembler.classic.Assembler createApplication
INFO: Utworzono EJB (wdrażanie-id = ScheduleEJB, EJB-name = ScheduleEJB, pojemnik = Moja Singleton Container)
21 grudnia 2012 09:59:45 org.apache.openejb.assembler.classic.Assembler createApplication
INFORMACJE: kroki EJB (wdrażanie-id = ScheduleEJB, EJB nazwa = ScheduleEJB, pojemnik = mój Singleton pojemnika)
Tak, sprawdziłem to samo, ale mój problem polegał na tym, że nie można go kodować, ale w jaki sposób mogę uruchomić ten kod w tomee i, co ciekawe, znalazłem rozwiązanie, że jeśli uruchomię mój projekt poprzez wdrożenie bezpośrednio z zaćmienia na działającym serwerze tomee, nie uruchomi on timera, ale kiedy po prostu wdrożyłem aplikację i zrestartuję serwer, po prostu uruchom mój timer, więc nie jestem w stanie ustalić przyczyny. – rykhan