Boundary Timer Event - setting Time Date "null" for "optional" Timer on User Task


in Activiti 5.x I was using a Timer Boundary Event initialized from a process variable e.g. ${myTimeDateVar} to initialize the timer with a given date/time.

I also could pass “null” then the timer was just not initialized - that was really handy to have an “optional” timer on the User Task. I think to remember this was also documented somewhere.

This is not working in Flowable - and perhaps shouldn’t due to BPMN spec?

In “/flowable-engine/src/main/java/org/flowable/engine/impl/util/” on line 139 I find

throw new FlowableException("Due date could not be determined for timer job " + dueDateString);

Based on a suggestion found on a similar question I now have a workaround with an exclusive gateway and two User Tasks - one of them with a Boundary Timer Event and the other without … its working as a replacement in the new process definition for Flowable, but it doesn’t look elegant … it looks really ugly :smiley:

Any suggestions?

Thanks and Regards, Andreas.

Hi everyone,

any suggestions or opinions on this topic?

Regards, Andreas.


I had a same problem. I solved it by assigning the Time End date to current date -1 and Time date to current date + 1. it works fine. It avoids creating lot of exclusive conditions to create a task with or without boundary timer event.