Программный таймер @Timeout выполняется несколько раз - PullRequest
0 голосов
/ 13 июня 2018

У меня непостоянный программный таймер.Если время выполнения превышает 600 секунд, метод @Timeout запускается дважды.Однако, если выполнение меньше 600 секунд, оно выполняется только один раз (это то, что мне нужно).

Кто-нибудь знает, что происходит?

Как можно решить эту проблему, чтобы таймер работал только один раз?

С уважением

1 Ответ

0 голосов
/ 27 июня 2018

Я уже нашел способ исправить это.Помещает аннотацию @ timeout аннотации @TransactionAttribute и @TransactionTimeout:

@Timeout
@TransactionAttribute (TransactionAttributeType.REQUIRES_NEW)
@TransactionTimeout (value = 1, unit = TimeUnit.HOURS)

Чтобы эти зависимости были помещены в пом

<dependency>
         <groupId> org.jboss.ejb3 </ groupId>
         <artifactId> jboss-ejb3-ext-api </ artifactId>
         <version> 2.2.0.Final </ version>
   </ dependency>

Я помогу вам с этими вопросами: wildfly 10 final: ошибка при вызове тайм-аута для таймера (это для @schedule, но применяется то же самое).

https://developer.jboss.org/thread/248773?_sscc=t

...