Как запланировать метод onMessage () слушателя JMS

Я хочу, чтобы мой слушатель работал с интервалом 'x' минут, я прошел через аннотацию @Scheduled в Spring, но я не уверен, как использовать ее с jms listener, я был бы признателен, если бы кто-нибудь вводил то же самое -

Here is my code snippet of Consumer

@Override @Scheduled(cron="0 */x * * * *")
  public void onMessage(Message message) {
   try {
    LOG.info("+++++++++++++++++++++++++++++++");
    MailMessageObject response = (MailMessageObject)messageConverter.fromMessage(message);
    LOG.info("Application : failed message as a response: {}", response);
    LOG.info("+++++++++++++++++++++++++++++++");
// Here we are getting failed message, again create mail and will           // send thru java mail
            SendMessageHelper help = new SendMessageHelper();
            help.abstractEmailSender(response);

    }

person Rahul Gupta    schedule 23.03.2017    source источник
comment
см. stackoverflow.com/questions/42925870/   -  person Hassen Bennour    schedule 23.03.2017


Ответы (1)


Это не работает - слушатель управляется сообщениями и будет запускаться всякий раз, когда сообщение будет получено.

Если вы хотите получать сообщения по расписанию, используйте вместо этого метод JmsTemplate.receive(...) (с таймаутом для обработки, когда сообщений нет).

person Gary Russell    schedule 23.03.2017