Граничное событие в пользовательской задаче в Activiti не срабатывает

Я использую Activiti BPM для реализации простого рабочего процесса. Этот рабочий процесс отправляет сообщения электронной почты пользователям и ожидает отзывов пользователей. Если отзыв не будет получен в течение 24 часов, он снова отправит электронное письмо и будет ждать ответа.

Я использовал граничное событие следующим образом:

      <boundaryEvent id="boundarytimer1" name="Timer" attachedToRef="userTask" cancelActivity="true">
    <timerEventDefinition>
      <timeDuration>PT24H</timeDuration>
    </timerEventDefinition>
  </boundaryEvent>

Я вижу задание таймера, созданное в таблице ACT_RU_JOB. Однако эта работа не запускается.


person palkars    schedule 23.09.2014    source источник
comment
Что произошло после превышения таймера? Работа все еще существует после 24 часов? Есть ли у вас внешний поток от граничного события?   -  person Petar Butkovic    schedule 23.09.2014
comment
@Peter - работа все еще существует через 24 часа. Существует внешний поток от граничного события для отправки системной задачи электронной почты.   -  person palkars    schedule 23.09.2014


Ответы (2)


Вероятно, вы не установили jobExecutorActivate=true в своей конфигурации Activiti.

<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
        <property name="dataSource" ref="dataSource" />
        <property name="transactionManager" ref="transactionManager" />
        <property name="databaseSchemaUpdate" value="true" />
        <property name="jobExecutorActivate" value="true" />
        <property name="history" value="activity"/>
</bean>

Надеюсь, поможет.

person Petar Butkovic    schedule 23.09.2014
comment
Это абсолютно верно для Петара. Я добавил это свойство, и теперь оно работает! Спасибо Петар. - person palkars; 23.09.2014

person    schedule
comment
Не могли бы вы добавить объяснение того, что это делает и как это отвечает на вопрос. - person Cray; 28.06.2019