Сервис не зарегистрирован при запуске - PullRequest
2 голосов
/ 06 февраля 2011

Я использую JBoss5.1.x AS, EJB3.0.Я пытаюсь добавить работу (используя Кварц) в мое развертывание.Я регистрирую новую службу, поэтому она запускает планировщик при развертывании приложения.

Моя проблема в том, что служба не регистрируется при развертывании приложения.

Мой код:

Интерфейс:

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()
    {
    }
}

1 Ответ

0 голосов
/ 08 февраля 2011

Я нашел решение.

Я не использовал правильную аннотацию.Я должен использовать аннотации EJB3.

...